python基础----斐波那契数列

时间:2023-03-08 18:52:23

python实现斐波那契数列的三种方法

 """
斐波那契数列
0,1,1,2,3,5,8,13,21,...
"""
# 方法一:while循环
def fibonaccise(number):
"""
求数字number以内的斐波那契数列
"""
a = 0
b = 1
list_number = [a]
while b < number:
list_number.append(b)
a,b = b,a+b
return list_number print(fibonaccise(1000)) # 方法二:递归函数
def fibo(n):
"""
n为斐波那契数列的第n个数字
"""
if n == 0 or n == 1:
return n
return fibo(n-1) + fibo(n-2)
print(fibo(8)) # 方法三:利用生成器函数
def fibo1():
"""
利用yield建立生成器函数,生成
"""
a,b = 0,1
while True:
yield a
a,b = b,a + b iter = fibo1()
print(next(iter))
print(next(iter))