代码实现如下:
# -*- coding: utf-8 -*- # 定义函数 def fab(n): # 判断n的有效性 if n <= 0: return '传递的参数必须是大于0的正整数!' # 当n为1时,返回斐波那契的第一个数0 elif n == 1: return 0 else: # 给前两个数赋值为1 a, b = 0, 1 # 初始化一个列表变量,列表前两个值分别为0和1 fab_list = [0, 1] # 由于fab_list初始化时已经有两个值,所以得到n个数只需要循环n-2次即可 for i in range(n - 2): # 以下语句实现后一个数等于前两个数的和 a, b = b, a + b # 把前两个数的和加入到列表中 fab_list.append(b) # 返回列表 return fab_list # 打印出包含11个斐波那契的序列 print(fab(11))
运行结果: