Yıldızların Listesi
Coddy'nin Pygame Journey'sinin Oyun Penceresinde Python bölümünün bir parçası. Ders 24 / 32.
Bir liste, birçok değeri tek bir değişkende, sıralı olarak ve köşeli parantezler içinde tutar:
stars = [(100, 80), (220, 160), (360, 100)]Burada her öğe bir konum demetidir. stars[0] ilk öğe olan (100, 80), stars[1] ise ikinci öğedir. range ifadesinde olduğu gibi sayma 0'dan başlar.
for döngüsü bir listedeki öğeler üzerinde dolaşabilir. Döngü değişkeni sırayla her öğeyi alır:
for star in stars:
pygame.draw.circle(screen, (255, 255, 255), star, 5)Bir konum demet olduğundan, star doğrudan merkezin olması gereken yere geçer. Listeye bir konum ekle; döngüyü değiştirmeden bir yıldız daha görünür. Liste, ekranda ne olduğunu oyunun belleğinde tutar; döngü de listede ne varsa onu çizer.
Görev
KolayBir listeden beş yıldızlı bir gökyüzü çiz:
(360, 100),(480, 200)ve(580, 70)değerlerinistarslistesinin sonuna ekle.stars[0]öğesini çizen satırıfor star in stars:ile değiştir ve her birini yarıçapı 5 olan beyaz bir(255, 255, 255)daire olarak çiz.
Kendin dene
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Oyun döngüsünden önce gerekli hazırlıkları burada yap.
stars = [(100, 80), (220, 160)]
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Her karede değişiklikleri burada yap.
screen.fill((20, 24, 48))
# Ekranı doldurduktan sonra burada çizim yap.
pygame.draw.circle(screen, (255, 255, 255), stars[0], 5)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Oyun Penceresinde Python bölümündeki tüm dersler
6Şeylerin Listeleri
Yıldızların ListesiEklemek için Tıklalen ile SayBir Yıldızı KaldırRastgele SayılarKendi başına pratik yap: Pygame playground