用python语言编斐波那契数列_用python函数写斐波那契数列
斐波那契数列,又称黄金分割数列、因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列: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=0
n=1
# 用list存储
l=[0,1]
# 设定初始项
i=2
# 用while循环进行运算,原理:后一项等于前两项之和
while i
# m+n赋值给n
n=m+n
# 将n添加至list
l.append(n)
# 通过索引将list的前一项赋值给m
m =l[i-1]
#通过自加来达到退出循环的条件
i=i+1
#打印出list
print(l)
# 调用函数
fibo(10)
第二种:递归方式实现,这种就是经典模型了
# 从零开始,输出第n项斐波那契数列def fibo(x):
if x==1:
return 0
elif x==2:
return 1
elif x>2:
return fibo(x-1)+fibo(x-2)
else:
print("输入错误,请重新输入!")
用python语言编斐波那契数列_用python函数写斐波那契数列相关推荐
- python语言程序设计基础答案第四章_《Python语言程序设计基础》第四章笔记
4.1 程序的分支结构 4.1.1 单分支结构 if : if True: print("条件正确") 4.1.2 二分支结构 if : else : if True: print ...
- python语言的单行注释以井号开头_初识Python
Python Python开发 Python语言 初识Python 初识Python 计算机基础 计算机的组成: 输入输出设备.存储器.主板.CPU.硬盘.内存.显示器.电源.显卡. CPU:中央处理 ...
- python语言的编程模式是什么意思_关于 Python 语言的编程模式,哪个说法正确?_学小易找答案...
[简答题]给出异常处理的流程.要求包括else和finally,并说明else和finally的区别. (10.0分) [单选题]关于函数,以下选项中描述错误的是() (7.0分) [多选题]Pyth ...
- python语言的单行注释以井号开头_《Python编程基础》
任务2.1 掌握Python的固定语法 任务描述 Python是一门简单又优雅的语言,在使用之前,读者需要了解并掌握它的基础语法,这样有助于代码的学习和运用,并有利于保持一个良好的编程风格.读者需要认 ...
- python语言的编程模式是什么意思_编程语言Python,可以用来干什么
原标题:编程语言Python,可以用来干什么 Python因为简单全面易用而成为近年来大热的编程语言.但是很多人学习了这门余元的语法和基本功能之后却不知道Python能干什么以及怎么做.在此,把Pyt ...
- 用python语言实现游戏关卡之间的转化_用python tkinter 129条语句实现2048游戏
2048游戏规则如下,游戏由16个正方体组成4行4列矩阵,每个正方体显示可以为空,也可以显示2.4.8.16.32-2048.4096任一数字.初始矩阵只有2个正方体有数字,其余全为空,这两个数字可为 ...
- python语言浮点数可以不带小数部分吗_关于Python语言的浮点数类型,以下选项中描述错误的是 ( )_学小易找答案...
[单选题]关于Python赋值语句,以下选项中不合法的是 ( ) [简答题]2014年22JAVA_B场参考答案.doc [单选题]下面代码的输出结果是 ( ) d ={" 大海 " ...
- 以下可以采用python语言保留字的是-以下选项中,不是Python语言保留字的是_学小易找答案...
[单选题]以下选项中,不是 Python 语言保留字的是 [连线题]将动机理论及其解释说明连线: [单选题]以下选项中,不是Python语言合法命名的是 [单选题]在Python函数中,用于获取用户输 ...
- Python语言学习之双下划线那些事:python和双下划线使用方法之详细攻略
Python语言学习之双下划线那些事:python和双下划线使用方法之详细攻略 目录 双下划线介绍 1.关于双下划线的函数或方法或属性 双下划线介绍 1.关于双下划线的函数或方法或属性 __name_ ...
- Python语言学习之常见语句命令那些事:python和常见语句命令(条件语句、pass语句)使用方法之详细攻略
Python语言学习之常见语句命令那些事:python和常见语句命令(条件语句.pass语句)使用方法之详细攻略 目录 Python常见语句命令 1.python的条件语句 2.Python之pass ...
最新文章
- centos删除系统自带的httpd
- MFC中UPD通信详细解说
- Kafka概念入门(一)
- 三数之和为0(c语言实现)(改进)
- 计算机常用英语(2)
- 跟我学交换机配置(一)
- Linux命令之find的用法
- 使用jMeter的regular expression extract提取SSO form的XSRF protection token
- currentTarget与target的区别
- 测验8: 程序设计方法学 (第8周)(编程题)
- 笔记本电脑插耳机后耳机无声音有外放情况,咋办??
- php收藏影视,十个值得收藏的影视资源网站
- QQ聊天记录多角度分析Python实现
- Unity优化——模型合并
- 领扣LintCode问题答案-5. 第k大元素
- 浅谈一类积性函数的前缀和
- 战网服务器组件,架设自己的战网服务器
- Mezzanine 修改默认主页
- 单片机(MCU)复位电路
- PhantomJS将网页保存为图片