python中递归函数的使用

python中递归函数的使用

递归函数就是自己调用自己的函数,递归函数使用过程中应注意调用深度,否则计算机无法承受。

1.使用递归函数实现计算某个数的阶乘。

def fact(n):
if n==1:
    return 1
return n*fact(n-1)


print(fact(n))

其中n为某个数。

1.2用递归函数来实现获取斐波拉契数列中的第n个数字的值。
斐波拉契数列特点:从第三个数开始,后一个数等于前面两个数之和。

初始方法:

a=0
b=1
while a<1000:
    print(b)
    a,b=b,a+b

输出结果:

1
1
2
3
5
8
13
21
34
55
89
144
233

进阶方法:

def func(n):
    if n==1 or n==2:
        return 1
    else:
        return func(n-1)+func(n-2)
res=func(20)
print(res)

输出结果:

6765

或者:

list=[]
for i in range(20):
    if i==0 or i==1:
        list.append(1)
    else:
        list.append(list[i-2]+list[i-1])
print(list)

输出结果:

[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值