Le next(iterator)
La fonction est l'une des fonctions intégrées de Python. Vous pouvez donc l'utiliser sans importer de bibliothèque. Il renvoie la valeur suivante à partir du iterator
vous passez comme premier argument obligatoire. Un second argument facultatif default
renvoie la valeur par défaut passée au cas où l'itérateur ne fournirait pas de valeur suivante.
Syntaxe :
next(iterator, <default>)
Argumentation :
- itérateur – l'élément suivant est récupéré du
iterator
- par défaut (facultatif) - valeur de retour si l'itérateur est épuisé (il n'a pas d'élément suivant)
Tutoriels associés :
- Aide-mémoire des mots-clés Python
- Itérateurs Python
- Mot clé de rendement
- Listes Python
- Python
iter()
Exemple 1 :Aucune valeur par défaut
L'exemple suivant montre le next()
fonction en action - sans utiliser de valeur par défaut si l'itérateur est vide.
users = ['Alice', 'Bob', 'Carl', 'David'] # convert the list to an iterator users_iterator = iter(users) x = next(users_iterator) print(x) # Output: 'Alice' x = next(users_iterator) print(x) # Output: 'Bob' x = next(users_iterator) print(x) # Output: 'Carl' x = next(users_iterator) print(x) # Output: 'David'
Chaque fois que vous appelez le next(iterator)
, l'itérateur renvoie l'élément suivant dans l'itérateur sur la liste Python users
.
Mais que se passe-t-il si vous appelez le next()
fonctionner à nouveau sur le users_iterator
maintenant vide objet ?
x = next(users_iterator) print(x) ''' Traceback (most recent call last): File "C:\Users\xcent\Desktop\Finxter\Blog\HowToConvertBooleanToStringPython\code.py", line 22, in <module> x = next(users_iterator) StopIteration '''
Python lance un StopIteration
Erreur.
Apprenons à résoudre ce problème !
Exemple 2 :Avec valeur par défaut
Ne pas fournir à Python une solution au problème que l'itérateur peut être vide est une source courante d'erreurs ! Vous pouvez corriger les erreurs en passant le default
facultatif argument :
x = next(users_iterator, 42) print(x) # 42
Maintenant, vous ne pouvez pas planter le next(...)
ne fonctionne plus ! Allez-y et essayez-le…
Coquille interactive
Le shell de code interactif vous offre un moyen d'essayer votre compétence nouvellement acquise :comprendre le next()
fonction. Pouvez-vous planter le script en modifiant les arguments de la fonction ?
Exercice :Exécutez le code dans le shell interactif. Maintenant, changez la valeur par défaut et relancez !