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

a,b增加为啥是成倍的

def __init__(self, num):        a,b,L=0,1,[]        for n in range(num):            L.append(a)            a=b            b=a+b        self.numbers=L 请大佬看看,a,b的值变化,怎么这么奇怪

正在回答

3 回答

b的值给a,同时b变成之前的a、b的和,所以需要临时变量实现。可以参考下

tmp = a

a = b

b = a + tmp


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

3Q已经解决了

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

a=b     b=a+b”  这两个如果分来执行的话,后面的b=a+b中的a就是前面a=b后的值,所以后面的b=a+b就变成了实际上的b=b+b,所以增加就变成了成倍的增加。

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

举报

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

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

进入课程

a,b增加为啥是成倍的

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号