Mehrere If- und Elif-Anweisungen in Python
In Python können Sie bei der Auswertung bedingter Anweisungen mehrere If-Anweisungen oder eine einzelne If-Anweisung verwenden -elif-Anweisung. Obwohl beide Ansätze das gleiche Ergebnis erzielen können, gibt es einige wesentliche Unterschiede, die sich auf die Codeeffizienz auswirken können.
In dem von Ihnen vorgestellten Szenario:
if text == 'sometext':
print(text)
if text == 'nottext':
print("notanytext")
Jede if-Anweisung wird unabhängig ausgewertet, unabhängig davon, ob die vorherige mit der Bedingung übereinstimmt. Wenn „text“ mit „sometext“ übereinstimmt, wird „sometext“ ausgegeben. Ist dies nicht der Fall, fährt der Code mit der nächsten if-Anweisung fort, um zu prüfen, ob sie mit „nottext“ übereinstimmt.
Alternativ wertet eine if-elif-Anweisung Bedingungen nacheinander aus:
if text == 'sometext':
print(text)
elif text == 'nottext':
print("notanytext")
Wenn in diesem Fall „text“ mit „sometext“ übereinstimmt, wird der entsprechende Zweig ausgeführt und der Code beendet die Auswertung weiterer Bedingungen. Wenn also „text“ „sometext“ ist, wird „sometext“ gedruckt und die elif-Bedingung wird nicht überprüft.
Überlegungen zur Leistung:
Mehrere if Anweisungen können zu unnötiger Codeausführung führen. Wenn die erste Bedingung falsch ist, wertet der Interpreter trotzdem alle nachfolgenden if-Anweisungen aus. Dies kann sich auf die Leistung auswirken, insbesondere in Szenarien, in denen mehrere if-Anweisungen auf viele Bedingungen prüfen.
Elif-Anweisungen hingegen sind effizienter, da sie nur Bedingungen auswerten, die der erfüllten Bedingung folgen. Dies spart Ausführungszeit und verbessert die Codeleistung.
Best Practice:
Als allgemeine Best Practice ist es ratsam, wann immer möglich elif-Anweisungen zu verwenden. Dies verbessert nicht nur die Effizienz des Codes, sondern verbessert auch die Lesbarkeit und macht den Ablauf Ihrer Logik klarer. Mehrere if-Anweisungen können unhandlich werden, insbesondere bei komplexen Bedingungen mit vielen Verzweigungen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3