У меня есть список объектов. Я хочу найти один (первый или любой другой) объект в этом списке, у которого атрибут (или результат метода - что угодно) равен value
.
Какой самый лучший способ найти его?
Вот тестовый пример:
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 isn't anywhere near 'Pythonic'
for x in test_list:
if x.value == value:
print "i found it!"
break
Я думаю, что использовать генераторы и reduce()
не будет иметь никакого значения, потому что он все еще будет перебирать список.
PS .: Уравнение value
является лишь примером. Конечно, мы хотим получить элемент, который удовлетворяет любым условиям.