请帮助我理解 Python 3 上的输出

Please help me in understanding this output on Python 3

我有下面这段代码,生成的输出是 17 5 但我无法弄清楚为什么 x 的值在最终解释后是 17 而不是 18。请帮助我理解这背后的逻辑

x,y=7,2
x,y,x=x+1,y+3,x+10
print(x,y)

生成的输出是:17 5 为什么不是 18 5

第一行后,x为7,y为2。

在第二行中,您将 x,y,x 设置为 x+1,y+3,x+10

计算右边的表达式,得到 8,5,17

您将 8 分配给 x,将 5 分配给 y,将 17 分配给 x

所以最后,x==17y==5