For ile Tekrarla
Coddy'nin Pygame Journey'sinin Oyun Penceresinde Python bölümünün bir parçası. Ders 15 / 32.
Bir for döngüsü, verilen her değer için satırlarını bir kez tekrarlar:
for i in range(8):
pygame.draw.circle(screen, (255, 255, 255), (40 + i * 80, 80), 5)range(8), 0'dan başlayıp 8'e gelmeden duran 0, 1, 2 ve benzeri sayıları verir: toplam sekiz sayı. Döngü sırayla her birini i içine kaydeder ve girintili satırları çalıştırır. Böylece ilk yıldız x 40 konumunda, sonraki 120'de, ardından 200'de ve 600'e kadar çizilir.
Girintili satırlar, if yapısında olduğu gibi döngünün gövdesidir. Gövdeden sonraki ilk satır, dış girintiye dönüldüğünde, döngü tamamlanınca çalışır.
Bu döngü, oyun döngüsünün çizim kısmında yer alır; bu nedenle sekiz yıldızın tümü her karede yeniden çizilir. Kısa sürer ve hemen tamamlanır, dolayısıyla kare yine zamanında biter.
i, sayma değişkeni için yaygın bir addır; ancak herhangi bir ad kullanılabilir: for n in range(8): de aynı şekilde sayar.
Görev
KolayTek yıldızı, range(8) üzerinde döngü kuran ve (40 + i * 80, 80) konumunda yarıçapı 5 olan 8 beyaz yıldız çizen bir for döngüsüyle değiştir.
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.
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 çiz.
pygame.draw.circle(screen, (255, 255, 255), (40, 80), 5)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Oyun Penceresinde Python bölümündeki tüm dersler
4Çizen Döngüler
For ile TekrarlaBaşlangıç, Bitiş ve AdımDöngü Değişkenini Kullanİç İçe DöngüWhile ile SayKendi başına pratik yap: Pygame playground