python - 请帮助我理解 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==17
和y==5
。
推荐阅读
- javascript - Angular 6 watcher 不会编译 main.less 中导入的 less 文件
- python - 如何使用python api代码仅更新postgres表中json类型列的1个属性
- angular - router.navigateByUrl 不发送值 Angular
- dropdownbox - 在 Google App Maker 中使用文本框值绑定选项下拉过滤
- reactjs - Reactjs 中的构造函数
- javascript - NodeJS joi 返回 error = null,即使应该发生错误
- angular - 角形式阵列。动态获取字段键
- java - SimpleResolver 可以接受多个参数吗?
- jsf - 即时属性的影响,以及在 JSF 文档中发现的小差异
- .net - Win7中如何跳过或禁用显示崩溃消息框