Heim >Backend-Entwicklung >Python-Tutorial >Wie helfen die „any'- und „all'-Funktionen von Python, Unterschiede in iterierbaren Elementen zu ermitteln?

Wie helfen die „any'- und „all'-Funktionen von Python, Unterschiede in iterierbaren Elementen zu ermitteln?

Susan Sarandon
Susan SarandonOriginal
2024-12-24 20:59:13460Durchsuche

How Do Python's `any` and `all` Functions Help Determine Differences in Iterable Elements?

Die Any-and-All-Funktionen von Python verstehen

Die Any-and-All-Funktionen von Python sind wesentliche Werkzeuge zur Analyse der Wahrhaftigkeit iterierbarer Elemente.

beliebige Funktion

beliebige (iterierbare) gibt True zurück, wenn ein Element in der Iterable True ist (nicht False, None, 0, ''). Wenn alle Elemente False sind, wird False zurückgegeben. Es verhält sich ähnlich wie eine logische ODER-Operation.

all-Funktion

all(iterable) gibt True zurück, wenn alle Elemente im iterable True sind. Wenn auch nur ein Element False ist, wird False zurückgegeben. Es ähnelt einer logischen UND-Operation.

Anwendung auf Tupel

In Ihrem speziellen Fall haben Sie eine Liste von Tupeln:

d['Drd2'] = [[1, 5, 0], [1, 6, 0]]

Sie Komprimieren Sie diese Tupel, um eine Liste von Tupeln entsprechender Elemente zu erstellen:

list(zip(*d['Drd2'])) = [(1, 1), (5, 6), (0, 0)]

Für jedes dieser Elemente Für Tupel verwenden Sie den Ausdruck:

any(x) and not all(x)

Damit wird überprüft, ob mindestens ein Wert im Tupel unterschiedlich ist (mit „any“), während nicht alle Werte gleich sind (mit „not all“). In Ihrem Beispiel sind jedoch alle entsprechenden Werte in jedem Tupel gleich, sodass der Ausdruck für alle Tupel als „Falsch“ ausgewertet wird, was zu [Falsch, Falsch, Falsch] führt.

Korrektur der erwarteten Ausgabe

Um zu überprüfen, ob beide Zahlen in jedem Tupel nicht gleich sind, müssen Sie verwenden Ausdruck:

x[0] != x[1]

Dies vergleicht die beiden Zahlen im Tupel direkt und gibt True zurück, wenn sie unterschiedlich sind. Wenn Sie diesen Ausdruck mit Listenverständnis verwenden, erhalten Sie die erwartete Ausgabe von [Falsch, Wahr, Falsch], wobei (1, 1) gleich, (5, 6) unterschiedlich und (0, 0) gleich sind.

Das obige ist der detaillierte Inhalt vonWie helfen die „any'- und „all'-Funktionen von Python, Unterschiede in iterierbaren Elementen zu ermitteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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