小卜妞~ 2021-03-03 15:31 采纳率: 0%
浏览 94

发现python赋值的一个特性,同行赋值可以这样?

a = 3
b = 5
a, b = a + b, a
print(a, b)

结果是:a=8,b=3

本以为如此,a被a+b赋值之后,再进行b=a的赋值,还用了中间变量,结果python居然有这样的特性。在此记录一下

  • 写回答

5条回答 默认 最新

  • 天际的海浪 2021-03-03 15:53
    关注

    a + b, a 实际上是创建一个元组 (8,3) 作为中间结果。

    然后再把这个(8,3)元组解包分别赋值给a和b。

    评论

报告相同问题?