Elif et Else
Fait partie de la section Python dans une fenêtre de jeu du Journey Pygame de Coddy. Leçon 12 sur 32.
else donne une deuxième branche à un if, lorsque la condition est fausse. elif, abréviation de « else if », ajoute d’autres conditions entre les deux :
if moon_x < 200:
colour = (255, 170, 90)
elif moon_x < 440:
colour = (240, 230, 160)
else:
colour = (160, 190, 255)Python teste les conditions depuis le début, exécute la première branche dont la condition est vraie et ignore les autres. Pour x 100, les deux premières conditions sont vraies, mais seule la première branche est exécutée. else n’a pas de condition : cette branche est exécutée lorsqu’aucune des conditions précédentes n’était vraie.
Des if distincts fonctionnent différemment : chacun est testé. Avec trois if, une lune en x 100 deviendrait orange, puis le deuxième if la rendrait de nouveau jaune.
Ici, colour est une variable qui contient un tuple. Dessine avec : pygame.draw.circle(screen, colour, (moon_x, moon_y), 50).
Défi
MoyenColorie la lune en fonction de sa position. Dans la partie consacrée aux changements, après les touches :
- Si
moon_x < 200, définiscoloursur orange(255, 170, 90). - Elif
moon_x < 440, définis-le sur la couleur habituelle(240, 230, 160). - Else, définis-le sur bleu
(160, 190, 255). - Dessine la lune avec
colour.
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.
moon_x = 320
moon_y = 240
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.
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
moon_x = moon_x - 4
if keys[pygame.K_RIGHT]:
moon_x = moon_x + 4
screen.fill((20, 24, 48))
# Dessinez ici, après le remplissage.
pygame.draw.circle(screen, (240, 230, 160), (moon_x, moon_y), 50)
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 Lune3Si et touches
Passer de l’autre côté du bordLes touches déplacent la luneElif et ElseEt, ouVrai ou fauxEntraînez-vous par vous-même : Playground Pygame