Python表達式內賦值
- 2019 年 10 月 7 日
- 筆記
1
消息來源
消息來源為PEP 572,該PEP已經被討論通過,最終發佈時細節可能會有改動,但是一定會發佈。該提案網址:https://www.python.org/dev/peps/pep-0572/
2
為什麼要新增這個語法?
給表達式的結果一個名字是很有必要的,它讓你可以重用這個結果。目前你可以使用一個賦值語句來創建一個變量,用這個變量代表表達式的值。但是這個辦法沒法使用在表達式內部,比如列表推導中。
另外,給一個長長的表達式的一部分一個命名,也對調試很有好處。你可以查看部分的結果。如果不能在表達式內部進行變量賦值,那麼你就只能重構代碼才能調試代碼的中間結果了。有了「表達式賦值」,你需要做的就是添加幾個 name := 標籤了,這樣你就不需要為了調試而大面積地更改代碼了,這樣可以避免不少的bug,也讓其他合作者更容易理解你的代碼。
3
新語法預覽
表達式賦值的基本語法如下:
Name := expr
Name是表達式的名稱,也就是得到變量的名稱。
:=是一個冒號加一個等號。
expr是任意表達式
4
示例代碼

對於這個新語法,看官,你怎麼看?快去評論區談談你的看法吧!