In Python 3.8 eingeführt, stellen Zuweisungsausdrücke den „Walross“-Operator (:=) bereit eine bedeutende Sprachverbesserung, die Zuweisungen innerhalb von Verständnissen und Lambdas ermöglicht.
Ein Zuweisungsausdruck ist ein benannter Ausdruck der Form name := expr, wobei name ein Bezeichner und expr ist jeder gültige Ausdruck. Der Ausdruck wird mit dem Wert von expr ausgewertet und gleichzeitig dieser Wert dem Namen zugewiesen.
Die Hauptmotivation für das Hinzufügen von Zuweisungsausdrücken war:
a) Bedingte Werte erhalten
Anstelle von:
<code class="python">command = input("> ") while command != "quit": print("You entered:", command) command = input("> ")</code>
Zuweisungsausdrücke ermöglichen:
<code class="python">while (command := input("> ")) != "quit": print("You entered:", command)</code>
b) Vereinfachen des Listenverständnisses
Beispiel:
<code class="python">[(lambda y: [y, x/y])(x+1) for x in range(5)]</code>
Kann vereinfacht werden zu:
<code class="python">[[y := x+1, x/y] for x in range(5)]</code>
Zuweisungsausdrücke unterscheiden sich von regulären Zuweisungen in mehreren Aspekten:
Das obige ist der detaillierte Inhalt vonWas sind Zuweisungsausdrücke und wie funktionieren sie in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!