课程
/后端开发
/Python
/python进阶
a, b = b, a+b 和 a = b b =a+b 有什么区别么
2015-03-23
源自:python进阶 6-9
正在回答
有区别,你试试
a = 1
b = 2
然后分别用两种方式计算看结果
学习攻城狮
a=0,b=1
a, b = b, a+b #a=b=1;b=0+1=1
而
a=b
b=a+b
#a=1;b=1+1=2
这个是不是特别,明确
a, b = b, a+b 这个属于递归
a = b b = a + b 是按顺序执行, 没有后续的操作
所以这两个是有差别的
重点学习递归是很重要的
希望对你有帮助
我觉得应该是等号右边的作为右值,先计算好了放在临时的存储区,然后统一赋值给左边。
a, b = b, a+b 这个相当于并行计算吧, 等号右边的都是原始值,左边得到新值
a = b
b = a + b 是按顺序执行, a = b 执行之后,a的值已经改变, 则b = a + b 则就相当于 b = 2 * b
风流水
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计