Débutant
🧠 Fondamentaux
10 XP
0 personnes ont réussi
Premier générateur avec yield
Les générateurs sont une manière beaucoup plus simple de créer des itérateurs. Au lieu d'écrire une classe avec __iter__ et __next__, tu écris une simple fonction avec le mot-clé yield.
Quand Python rencontre yield dans une fonction, cette fonction devient un générateur. A chaque appel de next(), la fonction s'exécute jusqu'au prochain yield, renvoie la valeur, puis se met en pause. Au prochain next(), elle reprend exactement là où elle s'était arrêtée.
C'est comme si la fonction avait un bouton pause. Chaque yield met en pause et donne une valeur.
Par exemple :
def trois_valeurs(): yield 10 yield 20 yield 30
list(trois_valeurs()) donne [10, 20, 30]
Écris un générateur compte_a_rebours(n) qui produit les nombres de n jusqu'à 1 (en descendant).