Exercices Fonctions & Modules Générateur de pairs
🎉

Bravo!

Débutant 🧠 Fondamentaux 10 XP 0 personnes ont réussi

Générateur de pairs

Les générateurs sont la solution Python pour traiter de grandes quantités de données sans exploser la mémoire. Au lieu de créer une liste de 10 millions d'éléments, un générateur les produit un par un, à la demande. C'est comme ça que fonctionnent les requêtes Django en lazy loading.

Au lieu de return, on utilise yield. Le générateur se met en pause à chaque yield et reprend au prochain appel.

Exemple :
def compter_jusqua(n):
i = 1
while i <= n:
yield i
i += 1

Écris une fonction génératrice nombres_pairs(limite) qui yield tous les nombres pairs de 0 à limite inclus.

Exemple :
list(nombres_pairs(10)) donne [0, 2, 4, 6, 8, 10]
list(nombres_pairs(7)) donne [0, 2, 4, 6]

Tests (2/4)

Jusqu'a 10
assert list(nombres_pairs(10)) == [0, 2, 4, 6, 8, 10]
C'est un générateur
g = nombres_pairs(4)
assert hasattr(g, '__next__') and hasattr(g, '__iter__')

+ 0 tests cachés

Indices (3 disponibles)

solution.py