Heim > Backend-Entwicklung > Python-Tutorial > Wie finde ich das erste passende Element in einem Iterable in Python?

Wie finde ich das erste passende Element in einem Iterable in Python?

Susan Sarandon
Freigeben: 2024-12-10 17:24:11
Original
718 Leute haben es durchsucht

How to Find the First Matching Element in an Iterable in Python?

Das erste passende Element in einem Iterable finden

Um das ursprüngliche Element aus einem Iterable abzurufen, das eine bestimmte Bedingung erfüllt, können Sie den folgenden Ansatz wählen:

Python 2.6 und Python 3

Für diejenigen, die werfen müssen Fall für StopIteration (wenn keine Übereinstimmung gefunden wird):

next(x for x in the_iterable if x > 3)
Nach dem Login kopieren

Für Szenarien, in denen Sie einen Standardwert zurückgeben möchten (z. B. Keine):

next((x for x in the_iterable if x > 3), default_value)
Nach dem Login kopieren

Python 2.5 und früher

Sie können die .next()-Methode des Iterators verwenden, die sofort auslöst, wenn der Iterator sofort endet (d. h. kein Element in iterable erfüllt die Bedingung). StopIteration. Wenn Ihnen diese Situation egal ist (wenn Sie beispielsweise wissen, dass es definitiv mindestens ein Element gibt, das die Bedingung erfüllt), können Sie .next() direkt verwenden.

Wenn es Ihnen wirklich wichtig ist, können Sie itertools, eine for...: break-Schleife oder genexp verwenden, um Ihre Funktion zu implementieren. Allerdings bieten diese Alternativen keinen großen Mehrwert, daher empfiehlt es sich, die einfachere Variante zu verwenden, die Sie ursprünglich vorgeschlagen haben:

def first(the_iterable, condition = lambda x: True):
    for i in the_iterable:
        if condition(i):
            return i
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie finde ich das erste passende Element in einem Iterable in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage