[PYTHON] Es gibt Zeiten, in denen Sie die if-Anweisung mit max · min verkürzen können

Mir ist aufgefallen, dass ich Python-Code geschrieben habe. Machen Sie sich also eine Notiz. Es mag eine rudimentäre und übliche Technik sein, aber ...

Angenommen, Sie möchten eine Variable namens a verzweigen, je nachdem, ob das Ergebnis (some_condition + add_value) einer bestimmten Formel größer als CONSTANT ist.

Versuchen Sie vorerst, es mit einer if-Anweisung entsprechend zu schreiben.

python


a = 0
if some_condition + add_value < CONSTANT:
    a = some_condition + add_value
else:
    a = CONSTANT

... Ich denke, es ist zu redundant, also werde ich die else-Operation in die Initialisierung (Variablendeklaration) einfügen.

python


a = CONSTANT
if  some_condition + add_value < CONSTANT:
    a = some_condition + add_value

Danach wurde mir klar, dass ich nur some_condition + add_value mit CONSTANT vergleichen musste, also habe ich min verwendet, um nur eine Zeile zu machen.

python


a = min(some_condition + add_value, CONSTANT)

In Python gibt es keinen ternären Operator, und der Code ist zum Zeitpunkt der bedingten Verzweigung in der Regel lang. Wenn Sie jedoch min / max verwenden, ist der Code möglicherweise etwas sauberer.

Recommended Posts

Es gibt Zeiten, in denen Sie die if-Anweisung mit max · min verkürzen können
Informationen zu der von Ihnen verwendeten Entwicklungsumgebung
Überprüfen Sie den Typ der von Ihnen verwendeten Variablen
Feststellen, ob das Bild Vögel enthält
Was verwenden Sie beim Testen mit Python?
Was tun, wenn bei Verwendung von ts-node-dev unter Linux der Fehler "ERR_FEATURE_UNAVAILABLE_ON_PLATFORM" angezeigt wird?
Lösung, wenn Heroku bei Verwendung von Selen abstürzt
So drehen Sie die for-Anweisung, wenn das Wörterbuch mehrere Werte für einen Schlüssel enthält
(Python3) Nein. OO (Verwenden Sie die Standardbibliothek?): 5 Shader
Wenn Sie der Meinung sind, dass die Person, die Sie mit pip eingegeben haben, nicht funktioniert → Verwenden Sie python3 zufällig?