Heim  >  Artikel  >  Backend-Entwicklung  >  Was sind Zuweisungsausdrücke und wie funktionieren sie mit dem Operator „Walross“?

Was sind Zuweisungsausdrücke und wie funktionieren sie mit dem Operator „Walross“?

Linda Hamilton
Linda HamiltonOriginal
2024-11-01 09:59:30359Durchsuche

What Are Assignment Expressions and How Do They Work with the

Zuweisungsausdrücke mit dem „Walross“-Operator

Seit Python 3.8 ermöglicht der „Walross“-Operator (:=) Zuweisungsausdrücke, eine wichtige Funktion, die Zuweisungen innerhalb ermöglicht Verständnisse und Lambdas.

Begründung für die Einführung von Zuweisungsausdrücken

Der Hauptgrund für die Einführung dieses Konzepts bestand darin, Zuweisungen innerhalb von Verständnissen und Lambda-Funktionen zu erleichtern, wo herkömmliche Zuweisungen nicht zulässig sind. Darüber hinaus verbessert es das interaktive Debugging und macht eine Umstrukturierung des Codes überflüssig.

Syntax, Semantik und Grammatik

Ein Zuweisungsausdruck hat die Form name := expr, wobei expr ein gültiger Python-Ausdruck ist und Name ist ein Bezeichner. Sein Wert ist derselbe wie expr, mit dem zusätzlichen Nebeneffekt, dass dem Variablennamen dieser Wert zugewiesen wird.

Unterschiede zu regulären Zuweisungsanweisungen:

Zuweisungsausdrücke unterscheiden sich von reguläre Zuweisungsanweisungen auf folgende Weise:

  • Zuweisungsausdrücke werden von rechts nach links ausgeführt, während reguläre Zuweisungen von links nach rechts ausgewertet werden.
  • Kommas haben in Zuweisungsausdrücken höhere Priorität .
  • Zuweisungsausdrücke unterstützen nicht mehrere Ziele, Zuweisungen nicht an einen einzelnen Namen, iterierbares Packen/Entpacken, Inline-Typanmerkungen oder erweiterte Zuweisungen.

Verwendungsbeispiele

Bedingte Werte abrufen:

<code class="python">while (command := input("> ")) != "quit":
    print("You entered:", command)</code>

Listenverständnis vereinfachen:

<code class="python">[[y := x+1, x/y] for x in range(5)]</code>

Das obige ist der detaillierte Inhalt vonWas sind Zuweisungsausdrücke und wie funktionieren sie mit dem Operator „Walross“?. 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