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

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

Susan Sarandon
Susan SarandonOriginal
2024-12-25 00:15:10955Durchsuche

How Can I Efficiently Compare Multiple Python Variables to a Single Value?

Testen mehrerer Variablen auf Gleichheit gegenüber einem einzelnen Wert in Python

Die beschriebene Aufgabe beinhaltet den Vergleich mehrerer Variablen (x, y, z) mit eine bestimmte ganze Zahl und generiert eine Liste der entsprechenden Buchstaben. Der bereitgestellte Code versucht, dies mithilfe einer Reihe von if-elif-Anweisungen zu erreichen, es ist jedoch ein prägnanterer und effizienterer Ansatz verfügbar.

Lösung

Das Missverständnis liegt in der Auswertung boolescher Ausdrücke, die als separate Ausdrücke und nicht als Sammelvergleich behandelt werden. Um mehrere Variablen gegen einen einzelnen Wert zu testen, sollte die folgende Syntax verwendet werden:

if 1 in (x, y, z):

Erläuterung

  • in-Operator: Prüft, ob der Wert auf dem Die linke Seite befindet sich in dem auf der rechten Seite angegebenen Satz.
  • Satz: Eine Sammlung eindeutiger und ungeordneter Elemente, die in geschweifte Klammern eingeschlossen sind ({ }). In diesem Fall erstellt {x, y, z} einen Satz der angegebenen Variablen.

Die Verwendung des in-Operators garantiert, dass nur eine Variable auf Gleichheit mit der Ganzzahl getestet werden muss (in diesem Fall , 1), wodurch der Code erheblich vereinfacht wird.

Vorteile

  • Prägnant: Reduziert die Anzahl der erforderlichen Codezeilen.
  • Effizient: Verwendet einen einzigen booleschen Ausdruck, um mehrere Variablen auszuwerten, was zu schnelleren Ausführungszeiten führt.
  • Verallgemeinerbar: Kann leicht geändert werden, um Tests mit verschiedenen Werten durchzuführen oder innerhalb verschiedener Variablensätze.

Daher lautet der überarbeitete Code zum Generieren der gewünschten Liste:

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

if 1 in {x, y, z}:
    mylist.append("c")
if 2 in {x, y, z}:
    mylist.append("d")
if 3 in {x, y, z}:
    mylist.append("f")

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