点击上方“Python3X”,选择“置顶或者星标”
第一时间收到精彩推送!
Python Every Day, 第 30 天
什么是斐波那契数
斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34...
即从0和1开始,之后的斐波那契数列系数就由之前的两数相加。
以下展示了三种代码实现,仅供参考
解法一:常规解法
def fib(n):
# 0,1 不做处理
if n == 0 or n == 1:
return n
# 前一个 和 前两个数的和
return fib(n - 1) + fib(n - 2)
# 生成前20个数列
for i in range(0, 20):
print(fib(i), end=' ')
解法二:迭代相加
def fib(n):
num1, num2 = 1, 1
# 迭代相加
for i in range(n - 1):
num1, num2 = num1 + num2, num1
return num1
解法三:生成器
def fid(n):
i, num1, num2 = 0, 1, 1
while i < n:
# 通过生成器来实现
yield num1
num1, num2 = num1 + num2, num1
i += 1
# 前20个数列
result = fid(20)
print([i for i in result])
以上,便是今天的分享,希望大家喜欢,觉得内容不错的,欢迎点击「在看」支持,谢谢各位。
如需查看更多[Python Every Day]系列,请点击我的主页的【每日一题】菜单。
感谢您的阅读