首页 > 解决方案 > 请帮助我理解 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

标签: pythonpython-3.xoperators

解决方案


在第一行之后,x是 7,y是 2。

在第二行中,您设置x,y,xx+1,y+3,x+10.

对右边的表达式求值,给出8,5,17.

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

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


推荐阅读