为了账号安全,请及时绑定邮箱和手机立即绑定

a, b = b, a + b,执行的时候a,b是被同时重新赋值么?

答案中的:a, b = b, a + b,执行的时候a,b是被同时重新赋值么?答案的写法和这样写:

a = b

b = a+b

结果是否不同?

为什么a,b=b,a+b这样写就能保证b在赋值时a仍是原来的a呢?

正在回答

2 回答

a, b = b, a + b 这种赋值,先计算右边的 那么 b=1, a+b=1,再赋值给a和b,那么 a=1, b=1

而a = b,此时 b=1, 那么a=1, b = a+b, 那么 b=2所以结果是不同的


0 回复 有任何疑惑可以回复我~
#1

CC白一枚 提问者

非常感谢!
2015-12-18 回复 有任何疑惑可以回复我~

度娘已经回答此问题:http://zhidao.baidu.com/question/304727322833271364.html

另外给楼主拆解以下,“a, b = b, a + b”的等同公式如下:(省得看文字)

temp=b
b=a+b
a=temp

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

a, b = b, a + b,执行的时候a,b是被同时重新赋值么?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信