python实现斐波那契数列
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现斐波那契数列相关的知识,希望对你有一定的参考价值。
斐波那契数列的形式是后一位数是前两位数之和,以此类推
具体表现为:1 2 3 5 8 13 21 34 55 .....
# -*- coding: utf-8 -*- # File : 迭代器实现斐波那契数列.py # Author: HuXianyong # Date : 2018-07-10 09:20 #方法一,用一个类的迭代器去做斐波那契数列 import time class Foo: def __init__(self,m,n): self.n=n self.m=m def __iter__(self): return self def __next__(self): if self.m > 500: exit() self.n,self.m = self.m,self.n+self.m return self.n f1=Foo(1,1) for i in f1: time.sleep(1) print(i)
#方法二:函数公式形式的斐波那契数列
import time def item(num): if num == 0: res = 0 elif num == 1: res = 1 else: res = item(num -1) +item(num - 2 ) return res i=0 while i < 9: print(item(i)) time.sleep(1) i+=1
方法三:迭代形式加入列表的斐波那契数列
def fibo(num): numList = [0,1] for i in range(num -2): numList.append(numList[-2] + numList[-1]) return numList print(fibo(10)) def fibo(n): x, y = 0, 1 while(n): x,y,n = y,x+y,n-1 return x print(fibo(10))
以上是关于python实现斐波那契数列的主要内容,如果未能解决你的问题,请参考以下文章