Heim > Backend-Entwicklung > Python-Tutorial > Wie kann man mehrere Python-Variablen effizient mit einem einzigen ganzzahligen Wert vergleichen?

Wie kann man mehrere Python-Variablen effizient mit einem einzigen ganzzahligen Wert vergleichen?

Linda Hamilton
Freigeben: 2025-01-05 20:58:41
Original
882 Leute haben es durchsucht

How to Efficiently Compare Multiple Python Variables to a Single Integer Value?

Vergleich mehrerer Variablen mit einem einzelnen Wert

Problembeschreibung:

Suche nach einer Methode in Python kann ermitteln, ob mehrere Variablen einer bestimmten Ganzzahl entsprechen, und anschließend eine aus drei Buchstaben bestehende Zeichenfolge erzeugen. Zum Beispiel:

x = 0
y = 1
z = 3
mylist = []

if x or y or z == 0:
    mylist.append("c")
if x or y or z == 1:
    mylist.append("d")
if x or y or z == 2:
    mylist.append("e")
if x or y or z == 3:
    mylist.append("f")
Nach dem Login kopieren

...die erwartete Ausgabe wäre eine Liste von ["c", "d", "f"].

Antwort:

Der bereitgestellte Code missversteht boolesche Ausdrücke in Python. Der ODER-Operator untersucht jede Seite separat, was zu der folgenden Auswertung führt:

(x == False or y == False) or (y == False or z == False)
Nach dem Login kopieren

Um zu überprüfen, ob mindestens eine Variable der gewünschten Ganzzahl entspricht, verwenden Sie den folgenden Ausdruck:

if 1 in (x, y, z):
    ....
Nach dem Login kopieren

Alternativ , für verbesserte Effizienz:

if 1 in {x, y, z}:
    ....
Nach dem Login kopieren

Erklärung:

Operatoren haben in Python Vorrang, und der Operator or hat eine niedrigere Priorität als Gleichheit (=). Daher wird zunächst die Gleichheit bewertet. Darüber hinaus gibt der Operator or den ersten gefundenen Wahrheitswert zurück. Das bedeutet, dass die Codesequenz:

x or y or z == 0
Nach dem Login kopieren

False zurückgeben würde, wenn x nicht 0 wäre, selbst wenn y oder z es wären. Um mehrere Variablen korrekt anhand eines einzelnen Werts auszuwerten, verwenden Sie einen Ausdruck wie:

x == 1 or y == 1 or z == 1
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann man mehrere Python-Variablen effizient mit einem einzigen ganzzahligen Wert vergleichen?. 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