Maison > développement back-end > Tutoriel Python > Comment trouver efficacement le premier élément correspondant dans un itérable ?

Comment trouver efficacement le premier élément correspondant dans un itérable ?

Linda Hamilton
Libérer: 2024-12-18 08:55:10
original
905 Les gens l'ont consulté

How to Efficiently Find the First Matching Item in an Iterable?

Obtenir le premier élément d'un itérable qui correspond à une condition

Pour récupérer le premier élément correspondant à une condition spécifiée à partir d'un itérable, évitez le traitement l'ensemble de l'itérable, qui pourrait être étendu. Vous pouvez utiliser les fonctions Python suivantes :

Python 2.6 et Python 3 :

  • suivant (x pour x dans la condition if_iterable) : déclenche StopIteration si aucune correspondance n'est trouvée.
  • suivant((x pour x dans la condition if_iterable), valeur_par défaut) : renvoie la valeur par défaut (par exemple, Aucune) si aucune correspondance n'est trouvée.

Python <= 2.5 :

  • utilisez la méthode .next() de iterable : déclenche StopIteration si iterable n'a aucun élément correspondant.
  • enveloppe l'itérable dans une fonction : renvoie la première correspondance trouvée ou déclenche StopIteration si aucune correspondance n'est trouvée. Implémentez-le avec itertools, des boucles for, des générateurs ou des blocs try/sauf.

Exemples d'utilisation :

iterable = range(10)

# Get the first element greater than 3
first_match_gt_3 = next(x for x in iterable if condition)  # Python 2.6+
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal