Réutilisation des objets du générateur Python :
Les générateurs, une fonctionnalité puissante de Python, sont des séquences de valeurs calculées paresseusement à la demande. Cependant, en raison de leur nature, les générateurs ne peuvent pas être rembobinés. Si vous souhaitez réutiliser un générateur plusieurs fois, vous avez plusieurs options :
1. Redémarrage de la fonction générateur :
Vous pouvez simplement réexécuter la fonction générateur pour redémarrer le processus de génération :
<code class="python">y = FunctionWithYield() for x in y: print(x) y = FunctionWithYield() for x in y: print(x)</code>
2. Stockage des résultats du générateur :
Vous pouvez également stocker les résultats du générateur dans une structure de données conservant la mémoire, telle qu'une liste ou un fichier sur disque. Cela vous permet de parcourir les résultats plusieurs fois :
<code class="python">y = list(FunctionWithYield()) for x in y: print(x) # Can iterate again: for x in y: print(x)</code>
Compromis :
Le choix entre ces options dépend de vos besoins spécifiques :
En substance, vous êtes confronté au compromis classique entre l'utilisation de la mémoire et le temps de traitement. Il n'existe pas de solution parfaite pour « rembobiner » un générateur sans compromettre l'un ou l'autre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!