Début, fin et pas
Fait partie de la section Python dans une fenêtre de jeu du Journey Pygame de Coddy. Leçon 16 sur 32.
range prend jusqu’à trois nombres : range(start, stop, step).
range(5): 0, 1, 2, 3, 4range(2, 6): 2, 3, 4, 5range(60, 200, 40): 60, 100, 140, 180
Il commence à la valeur de départ, ajoute le pas à chaque fois et s’arrête avant d’atteindre la valeur d’arrêt. La valeur d’arrêt elle-même ne fait jamais partie de la plage.
Avec une valeur de départ et un pas, la variable de boucle peut être directement la position, sans avoir besoin d’une somme :
for x in range(60, 600, 40):
pygame.draw.circle(screen, (255, 160, 60), (x, 420), 8)Pour terminer une rangée à 580, la valeur d’arrêt doit être supérieure : range(60, 580, 40) se termine à 540. Un pas peut être négatif pour compter à rebours : range(10, 0, -2) donne 10, 8, 6, 4, 2.
Défi
FacileSous les étoiles, dessine une rangée de lanternes avec une boucle for :
- Cercles orange
(255, 160, 60)de rayon 8 à y420. - x de 60 à 580, tous les 40 pixels : 14 lanternes.
- Utilise
rangeavec un début, une limite et un pas, et remplace la lanterne unique.
Essayez vous-même
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Préparez les éléments ici, avant la boucle de jeu.
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Modifiez les éléments ici, une fois par image.
screen.fill((20, 24, 48))
# Dessinez ici, après le remplissage.
for i in range(8):
pygame.draw.circle(screen, (255, 255, 255), (40 + i * 80, 80), 5)
pygame.draw.circle(screen, (255, 160, 60), (60, 420), 8)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Toutes les leçons de Python dans une fenêtre de jeu
1Votre première fenêtre
Votre premier programmeAfficher un messageLes couleurs en nombresDessiner la Lune4Des boucles qui dessinent
Répéter avec forDébut, fin et pasUtiliser la variable de boucleUne boucle dans une boucleCompter avec whileEntraînez-vous par vous-même : Playground Pygame