J'ai besoin d'une fonction capable d'itérer sur la collection, d'appeler une fonction fournie avec un élément de la collection en tant que paramètre et de renvoyer le paramètre ou son index lors de la réception "Vrai" de la fonction fournie.Python - "trouver" fonctionnel?
Il est somethong comme ceci:
def find(f, seq, index_only=True, item_only=False):
"""Return first item in sequence where f(item) == True."""
index = 0
for item in seq:
if f(item):
if index_only:
return index
if item_only:
return item
return index, item
index+= 1
raise KeyError
Je me demande s'il y a quelque chose comme ça dans le jeu d'outils python Standart?
L'extrait de l'OP est le moyen le plus direct (mais un peu plus long) d'exprimer l'exigence; il pourrait bien être la façon prescrite, selon la situation. A partir des réponses, cependant, vient un aperçu très utile: 'concernant les boucles, en cas de doute, consulter/considérer des outils '. – mjv