要求:
1、 fib函数直接生成一个序列,前两个数分别是1,1
2、 所有逻辑必须在一个函数里完成,不能有外部代码或者全局变量,只能用一个函数去实现
3、 不能用range之类的,这个fib函数应该使用递归的方式实现,(没有内部嵌套是加分项)
作答:
def fib(n,res=[1,1]):
if n <= 2:
return '数据量太少'
else: # n>2
if len(res) == n:
return
res.append(res[-1]+res[-2])
# 递归
fib(n, res)
return res
# 测试用例
for i in fib(n=100):
print(i)