用python函数写斐波那契数列

环球青藤 2020/10/30 20:04

斐波那契数列,又称黄金分割数列、因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以递归的方法定义。

对于学习编程语言的小伙伴们来说,斐波那契数列将是一个最经典的函数之一,今天用Python来给大家讲讲这个经典的函数怎么简单粗暴的实现。

实现之前呢,先给大家介绍一下斐波那契数列的原理,原题是一个兔子繁殖问题,简单的讲就是后一项等于前两项之和,即f(x)=f(x-1)+f(x-2),第一项可为0,亦可为1。

下面介绍两种常用的方式,或许没别人写的那么简洁,请见谅哈!

第一种:非递归方式,用的是索引和while循环相结合

# 从零开始,输出前n项斐波那契数列# 定义斐波那契函数def fibo(x):#初始化前两项m=0n=1# 用pst存储l=[0,1]# 设定初始项i=2# 用while循环进行运算,原理:后一项等于前两项之和while i<x:# m+n赋值给nn=m+n# 将n添加至pstl.append(n)# 通过索引将pst的前一项赋值给mm =l[i-1]#通过自加来达到退出循环的条件i=i+1#打印出pstprint(l)# 调用函数fibo(10)

第二种:递归方式实现,这种就是经典模型了

# 从零开始,输出第n项斐波那契数列

def fibo(x):
if x==1:
return 0
epf x==2:
return 1
epf x>2:
return fibo(x-1)+fibo(x-2)
else:
print("输入错误,请重新输入!")

推荐教程: 《Python教程》

以上就是小编分享的关于用python函数写斐波那契数列的详细内容希望对大家有所帮助,更多有关python教程请关注环球青藤其它相关文章!

免费直播

    精选课程 更多

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司