什麼是賦值表達式以及它們如何與'Walrus”運算符一起使用?

Linda Hamilton
發布: 2024-11-01 09:59:30
原創
372 人瀏覽過

What Are Assignment Expressions and How Do They Work with the

使用「Walrus」運算子的賦值表達式

自Python 3.8 起,「walrus」運算子(:=) 啟用賦值表達式,這是一個一個值運算式重要功能,允許在推導式和lambda。

引入賦值表達式的基本原理

引入此概念的主要原因是為了促進推導式和 lambda 函數中的賦值,而傳統賦值是不允許的。此外,它還增強了互動式調試,消除了程式碼重組的需要。

語法、語意和語法

賦值表達式的形式為 name := expr,其中 expr 是有效的 Python 表達式name 是一個識別符。它的值與 expr 相同,但附加了變數名稱被賦予該值的副作用。

與常規賦值語句的差異:

賦值表達式不同於常規賦值語句以下列方式進行:

  • 賦值語句以下列方式進行:
  • 賦值表達式從右到左,而常規賦值從左到右計算。
  • 逗號在賦值表達式中具有更高的優先權.

賦值表達式不支援多個目標、不支援單一名稱的賦值、可迭代打包/解包、內聯型別註或增強賦值。

使用範例

<code class="python">while (command := input("> ")) != "quit":
    print("You entered:", command)</code>
登入後複製
取得條件值:

<code class="python">[[y := x+1, x/y] for x in range(5)]</code>
登入後複製
簡化列表推導式:簡化列表推導式:

以上是什麼是賦值表達式以及它們如何與'Walrus”運算符一起使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!