Nat*_*Dai 3 python python-3.8 walrus-operator
这是我现在写的代码:
a = 1
if (a := a + 1) == 2:
print(a)
Run Code Online (Sandbox Code Playgroud)
我想知道是否存在这样的事情:
a = 1
if (a +:= 1) == 2:
print(a)
Run Code Online (Sandbox Code Playgroud)
PEP-527定义了新的海象运算符。讨论赋值语句和表达式之间差异的部分明确指出:
不支持增强分配:
Run Code Online (Sandbox Code Playgroud)total += tax # Equivalent: (total := total + tax)
在部分解释为什么=仍然是必要的:=,我们发现:
这两种形式具有不同的灵活性。:= 操作符可以在更大的表达式中使用;= 语句可以扩充到 += 及其朋友,可以链接,并且可以分配给属性和下标。
这强烈暗示无意支持任何类型的海象和就地运营商的合并。
| 归档时间: |
|
| 查看次数: |
77 次 |
| 最近记录: |