📅  最后修改于: 2023-12-03 15:25:11.347000             🧑  作者: Mango
斐波那契数列是一个经典的数学问题,定义为:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, ...
每个数都是前两个数之和。现在我们需要在 Python 中对斐波那契数列进行编码。
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
else:
fib = [0, 1]
while len(fib) < n:
fib.append(fib[-1] + fib[-2])
return fib
以上代码是用 Python 实现斐波那契数列的函数,它接收一个整数 n 作为参数,返回一个长度为 n 的斐波那契数列。
下面是一个测试示例:
print(fibonacci(10)) # 输出前 10 个斐波那契数列,即 [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
print(fibonacci(0)) # 输出空列表 []
print(fibonacci(1)) # 输出 [0]
代码中我们使用了递归的思想来生成斐波那契数列,如果n小于等于0,则返回空列表,否则我们从列表[0,1]开始,依次计算当前数是前两个数之和。递归计算,直到构造出长度为n的斐波那契数列为止。
在测试代码中,我们分别测试了生成前10个斐波那契数列、空列表和只有一个0的列表的情况。
以上就是对斐波那契数列进行编码的 Python 实现,如果您有不同的实现方式或任何问题,欢迎在评论区留言!