Maison >développement back-end >Tutoriel Python >Comment le mot clé « rendement » de Python permet-il une génération de données efficace ?
Les fonctions génératrices, les itérateurs et le mot-clé rendement sont des concepts fondamentaux en Python qui vous permettent de générer des données de manière incrémentielle .
Les itérateurs sont des objets qui renvoient une valeur d'une collection à la fois. Pour accéder à chaque valeur suivante, vous appelez la méthode next() de manière répétitive.
Les fonctions du générateur créent des itérateurs. Elles sont similaires aux fonctions normales mais contiennent des instructions de rendement. rendement se comporte comme return, mais au lieu de terminer la fonction, il suspend l'exécution et renvoie la valeur.
Le mot-clé de rendement est utilisé dans les fonctions du générateur. Chaque fois que rendement est appelé, la fonction génératrice renvoie la valeur spécifiée et suspend l'exécution. Lorsque le générateur est à nouveau appelé, l'exécution reprend là où la dernière instruction rendement s'est arrêtée.
Considérez le code suivant :
def generate_numbers(): for i in range(5): yield i
Ce code définit une fonction génératrice qui produit des entiers de 0 à 4. Lorsqu'elle est appelée avec next(), la fonction renvoie 0, 1, 2, 3 et 4 séquentiellement.
Les fonctions du générateur sont couramment utilisées :
Générateur les fonctions peuvent être contrôlées pour éviter un épuisement prématuré. Par exemple :
class Bank: def create_atm(self): while True: yield "0"
Ce code crée un générateur ATM infini. Cependant, vous pouvez y mettre fin en attribuant True à self.crisis. Cette approche est utile pour contrôler la disponibilité des ressources.
Le module itertools fournit des outils supplémentaires pour manipuler les itérables, tels que permutations(), qui peuvent générer toutes les permutations possibles à partir d'une liste.
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!