Die Schleifenvariable verwenden
Teil des Abschnitts Python in einem Spielfenster der Pygame-Journey von Coddy. Lektion 17 von 32.
Die Schleifenvariable ist eine Zahl wie jede andere, also kannst du mit ihr rechnen und mehr als nur die Position verändern. Hier ist jeder Planet größer und gelber als der vorherige:
for i in range(6):
x = 70 + i * 100
radius = 5 + i * 5
colour = (255, 80 + i * 30, 120)
pygame.draw.circle(screen, colour, (x, 240), radius)Gehe es für i = 2 durch: x ist 270, der Radius 15, die Farbe (255, 140, 120). Für i = 5: x ist 570, der Radius 30, die Farbe (255, 230, 120).
Variablen, die innerhalb des Schleifenrumpfs erstellt werden, etwa x und radius, erhalten bei jedem Durchlauf neue Werte. Wenn du die Bestandteile zuerst benennst, bleibt die Zeichenzeile kurz und übersichtlich.
Behalte jede Farbzahl zwischen 0 und 255. Hier ist der größte Grünwert 80 + 5 * 30, also 230, daher ist er unbedenklich.
Aufgabe
MittelÄndere die Schleife so, dass Planet i:
- wie bisher bei
(70 + i * 100, 240)zentriert ist; - einen Radius von
5 + i * 5hat, von 5 bis 30; - die Farbe
(255, 80 + i * 30, 120)hat.
Probier es selbst
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Richte hier alles ein, bevor die Spielschleife beginnt.
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Ändere hier die Dinge einmal pro Frame.
screen.fill((20, 24, 48))
# Zeichne hier, nachdem der Bildschirm gefüllt wurde.
for i in range(6):
pygame.draw.circle(screen, (255, 80, 120), (70 + i * 100, 240), 10)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Alle Lektionen in Python in einem Spielfenster
4Schleifen, die zeichnen
Mit For wiederholenStart, Stopp und SchrittweiteDie Schleifenvariable verwendenEine Schleife in einer SchleifeMit While zählenÜbe selbstständig: Pygame-Playground