gpt4 book ai didi

python - 为什么解构增强赋值不可能?

转载 作者:行者123 更新时间:2023-12-01 01:17:05 24 4
gpt4 key购买 nike

Python 中可以进行解构:

a, b = 1, 2

还可以进行增强分配:

b += 1

但是解构增强赋值有什么原因无法完成吗?:

a, b += 1, 2
> SyntaxError: illegal expression for augmented assignment

据我所知,解构是一种语言的事情;它不能被诸如object.__add__()之类的东西修改。为什么该语言不分别对增强赋值的每个部分调用 object.__iadd__()

最佳答案

可能是因为表达式中的未定义行为,例如:

a, b += 1, a

应该如何评价?像这样

a' = a + 1
b = b + a'

或者只是

b = b + a
a = a + 1

-尚不清楚。因此,不允许解构增强赋值。

关于python - 为什么解构增强赋值不可能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54229376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com