python 实现斐波那契数列

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)

实现单个属于斐波那契数列的数

# 第一种 函数实现
def fb(n):
    a,b=1,1
    for i in range(n-1):
        a,b=b,a+b
    return a
# 输出了第4个斐波那契数列
print(fb(4))

#第二种 使用递归
def fb(n):
    if n == 1 or n == 2:
        return 1
    return fb(n - 1) + fb(n - 2)

# 输出了第4个斐波那契数列
print(fb(4))

实现斐波那契数列

def fb(n):
    if n == 1:
        return [1]
    if n == 2:
        return [1, 1]
    fbs = [1, 1]
    for i in range(2, n):
        fbs.append(fbs[-1] + fbs[-2])
    return fbs

print(fb(10))