斐波那契数列-Python实现

涨知识了终于意识到了Python的魅力所在,真的可以实现与数学公式一样的做法

以前用Java习惯了,总想着用这种递推式总是考虑哪个a替换哪个b,谁先谁后的事情

如下所示:

# 斐波那契数列

a = 1
b = 1
print("请输入n")
n = input()
n = int(n)
while n>0:
    print(a, end=" ")
    c = a + b
    a = b
    b = c
    n-=1

这样能不能实现当然可以,那你脑仁疼不?😁

当然,还可以这样

a, b = 1, 1
while b < 1000:
    print(a, end=',')
    a, b = b, a+b

你可能会问这段代码我都懂,就是这个没明白

 a, b = b, a+b

这是干嘛滴??

是不是等价于

a = b
b = a + b

NO,绝对不是,不要按照以往Java去理解这个

在Python中这个是同时执行的,就是说a = b ,同时b = a + b,是不是还有点不懂??云里雾里的

那你这样来看

已知 a = 1, b = 1

递推式(大括号实在是打不出来,就是大号{ ):

a = b;

b = a + b;

求a前五项的值(初中题)

posted @ 2022-06-26 15:13  楚关秦  阅读(22)  评论(0编辑  收藏  举报