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

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

 1 """
 2     斐波那契数列
 3     0,1,1,2,3,5,8,13,21,...
 4 """
 5 # 方法一:while循环
 6 def fibonaccise(number):
 7     """
 8         求数字number以内的斐波那契数列
 9     """
10     a = 0
11     b = 1
12     list_number = [a]
13     while b < number:
14         list_number.append(b)        
15         a,b = b,a+b
16     return list_number
17 
18 print(fibonaccise(1000))
19 
20 # 方法二:递归函数
21 def fibo(n):
22     """
23         n为斐波那契数列的第n个数字
24     """
25     if n == 0 or n == 1:
26         return n
27     return fibo(n-1) + fibo(n-2)
28 print(fibo(8))
29 
30 
31 # 方法三:利用生成器函数
32 def fibo1():
33     """
34         利用yield建立生成器函数,生成
35     """
36     a,b = 0,1
37     while True:
38         yield a
39         a,b = b,a + b
40 
41 iter = fibo1()
42 print(next(iter))
43 print(next(iter))

猜你喜欢

转载自www.cnblogs.com/jeffrey04118110/p/11811796.html