Python实现斐波那契数列

#斐波那契数列的递推实现

def fib(n):
    a,b=1,1
    while n>0:
        a,b=b,a+b
        n=n-1
    return a
for i in range(10):
    print(fib(i))


#斐波那契数列的生成器实现

def fib(max):
    a,b=0,1
    while max>0:
        a,b=b,a+b
        max=max-1
        yield a
for i in fib(10):
    print(i)

注意:赋值语句:

a, b = b, a + b

相当于:

t = (b, a + b) # t是一个tuple
a = t[0]
b = t[1]

 

posted on 2020-06-02 22:20  满船清梦压星河1024  阅读(354)  评论(0)    收藏  举报