J'ai une liste d'objets. Je veux trouver un (premier ou autre) objet dans cette liste qui a un attribut (ou un résultat de méthode - autre) égal à value
.
Quel est le meilleur moyen de le trouver ?
Voici un cas d'essai :
class Test:
def __init__(self, value):
self.value = value
import random
value = 5
test_list = [Test(random.randint(0,100)) for x in range(1000)]
# that I would do in Pascal, I don't believe it's anywhere near 'Pythonic'
for x in test_list:
if x.value == value:
print "i found it!"
break
Je pense que l'utilisation de générateurs et reduce()
ne fera aucune différence, car il s'agira toujours d'itérer dans la liste.
ps. : Equation pour value
n'est qu'un exemple. Bien sûr, nous voulons obtenir un élément qui répond à n'importe quelle condition.