In diesem Artikel wird erläutert, wie die Kurzschlussauswertung von Python in zusammengesetzten bedingten Ausdrücken die Effizienz steigert, indem die Auswertung gestoppt wird, sobald das Ergebnis feststeht.
Um das Konzept des Kurzschließens in zusammengesetzten bedingten Ausdrücken in Python zu verstehen, ist es wichtig, mit den logischen Operatoren „und“ und „oder“ vertraut zu sein. Die folgende Tabelle fasst die logischen Ergebnisse für diese Operatoren zusammen.
Tabelle 1
Die „und“- und „oder“-Operatoren
Hinweis: Aus Modul 3: Understanding Python Decision Control Structure, ITS320: Basic Programming, von Colorado State University Global, 2024. Geändert am 25. Februar 2024.
In Python liegt ein Kurzschluss im Zusammenhang mit zusammengesetzten bedingten Ausdrücken vor, wenn der Interpreter die Auswertung eines logischen Ausdrucks stoppt, sobald das Ergebnis des logischen Ausdrucks bestimmt ist (Severance, 2016).
Mit anderen Worten: Wenn der Interpreter beim Lesen eines logischen Ausdrucks das Ergebnis des Ausdrucks bestimmen kann, bevor er dessen Ende erreicht hat, würde er das Lesen des Ausdrucks beenden. Hinweis: Der Interpreter liest von links nach rechts .
Dies tritt auf, wenn die Operatoren „und“ und „oder“ in einem Ausdruck verwendet werden. Dies wird als boolesche Kurzschlussauswertung bezeichnet. (Hrehirchuk et al, 2024)
Zum Beispiel:
Bei Verwendung des „und“-Operators:
a = 1 b = 2 c = 3 d = 4 if a < b and a > c and a < d: #--- Do something
Hier kommt es zum Kurzschluss, wenn der Python-Interpreter aufhört, den logischen Ausdruck a < auszuwerten. b und a > c und a < d bei Schritt a > c weil a > c gibt False zurück. Folglich ist der Ausdruck a < b und a > c und a < d ist False, es spielt keine Rolle, ob der Ausdruck a < d gibt False oder True zurück.
Bei Verwendung des „oder“-Operators:
a = 1 b = 2 c = 3 d = 4 if a > b or a < c or a > d: #--- Do something
Hier kommt es zum Kurzschluss, wenn der Python-Interpreter aufhört, den logischen Ausdruck a > auszuwerten. b oder a < c oder a > d bei Schritt a < c weil a < c gibt True zurück. Folglich ist der Ausdruck a > b oder a < c oder a > d True ist, spielt es keine Rolle, ob der Ausdruck a> d gibt False oder True zurück.
Bei Verwendung einer Kombination aus den logischen Operatoren „und“ und „oder“ hat der Operator „and“ Vorrang vor dem Operator „or“. Dies ähnelt der Rangfolge arithmetischer Operatoren zwischen „ “ und „“, wobei „“ Vorrang vor „ „ hat. Die folgende Tabelle zeigt die Rangfolge der logischen Operatoren unter Verwendung von Klammern.
Tabelle 2
Vorrang der logischen Operatoren
Hinweis: aus Kapitel 40 Boolesche Ausdrücke und Kurzschlussoperatoren – Vorrang logischer Operatoren, von Kjell, n.d. Geändert am 25. Februar 2024.
Zusammenfassend lässt sich sagen, dass ein Kurzschluss auftritt, wenn die logischen Operatoren und und oder bestimmen, wann der Python-Interpreter die Auswertung eines Ausdrucks beendet, sobald das Ergebnis klar ist. Wenn beispielsweise der Operator „and“ verwendet wird, stoppt die Auswertung beim ersten „False“ und wenn der Operator „or“ verwendet wird, stoppt sie beim ersten „True“, was die Effizienz erhöht . Daher ist das Verständnis der Kurzschlussauswertung in Python für das Schreiben effizienter und effektiver bedingter Ausdrücke von entscheidender Bedeutung.
Referenzen:
Colorado State University Global (2024). Modul 3: Verständnis der Python-Entscheidungskontrollstruktur, ITS320: Grundlegende Programmierung. https://csuglobal.instructure.com/courses/88479/pages/module-3-overview?module_item_id=4620787
Hrehirchuk, M., Chalmers, E., Curtis, C. & Perri, P. (2024, 30. Januar). 5.11 Kurzschlussauswertung. Grundlagen der Python-Programmierung: Funktionen zuerst. Runestone Academy-my. https://runestone.academy/ns/books/published/foppff/conditionals_short-Circuit-evaluation.htmlLinks zu einer externen Website.
Kjell, B. (ohne Datum). Kapitel 40 Boolesche Ausdrücke und Kurzschlussoperatoren. Vorrang der logischen Operatoren. Einführung in die Informatik mit Java. Central Connecticut State University. https://chortle.ccsu.edu/java5/Notes/chap40/ch40_16.htmlLinks zu einer externen Website.
Severance, C. (2016, 5. Juli). 4.8. Kurzschlussauswertung logischer Ausdrücke._ Python für jeden Körper interaktiv_. Runenstein-Akademie. https://runestone.academy/ns/books/published/py4e-int/conditional/shortCircuit.html
__
Ursprünglich veröffentlicht bei Short-Circuit in Python’s Compound Conditional Expressions – Medium am 19. August 2024.
Das obige ist der detaillierte Inhalt vonKurzschluss in den zusammengesetzten bedingten Ausdrücken von Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!