从零开始学Python

斐波那契数列的Python实现

2018-02-09  本文已影响6人  iLester

斐波那契数列是数学中一个有意思的数字排列,它的规则就是,第三个数开始,每个数都是前两个数的和,例如前两个数是0,1,那么之后依次会是2, 3, 5, 8…….

可以用Python中比较简单地来实现,如下:

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

执行后的结果是:0 1 1 2 3 5 8 13 21 34

如果考虑复用,可以写成单纯的函数,如下:

def fibo2(n):
        a, b = 0, 1
        while a <= n:
            print(a, end=' ')
            a, b = b, a+b

fibo2(200000)

运行结果是:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 [Finished in 0.2s]

当然这个代码还可以改进,推荐的方式是用生成器,用yield每次产生一个数,这个就以后再介绍。

上一篇下一篇

猜你喜欢

热点阅读