Python 3.8 引入了一個新概念,稱為“賦值表達式”,使用“ :=”運算符,通常稱為“海象”運算符。
賦值表達式採用 name := expr 的形式,其中 expr是任何有效的 Python 表達式,名稱是識別碼。語意是表達式的值賦給 name,賦值表達式的值也與 expr 相同。
主要動機引入賦值表達式的目的是在以前禁止的列表推導式和 lambda 函數等結構中啟用賦值。它還有助於互動式調試,無需程式碼重構。
a) 取得條件值:
之前:
<code class="python">command = input("> ") while command != "quit": print("You entered:", command) command = input("> ")</code>
<code class="python">while (command := input("> ")) != "quit": print("You entered:", command)</code>
:
b)<code class="python">[(lambda y: [y, x/y])(x+1) for x in range(5)]</code>簡化列表推導式
<code class="python">[[y := x+1, x/y] for x in range(5)]</code>
以上是什麼是賦值表達式以及它們在 Python 3.8 中如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!