Szukałem eleganckiego (krótkiego!) Sposobu na zwrócenie pierwszego elementu listy, który pasuje do określonych kryteriów, bez konieczności oceny kryteriów dla każdego elementu lista. W końcu wymyśliłem:Znajdowanie pierwszego elementu listy, dla którego warunek jest prawdziwy
(e for e in mylist if my_criteria(e)).next()
Czy jest lepszy sposób to zrobić?
Mówiąc dokładniej: jest wbudowany w funkcje Pythona, takie jak all()
i any()
- czy nie byłoby sensu mieć coś takiego jak first()
też? Z jakiegoś powodu nie podoba mi się połączenie z next()
w moim rozwiązaniu.
pokrewne: http://stackoverflow.com/questions/2361426/what-is-the-best-way-to-get-the-first-item-from-an-iterable -matching-a-condition –
Dlaczego wszystko musi być eleganckim jednym wkładem? Utwórz funkcję o znaczącej nazwie i zrób z nią. –
W pythonie nie ma funkcji 'first', ale łatwo jest napisać:' first = next';) – georg