函数的递归

这篇博客探讨了Python编程中的两个重要概念——函数的递归和装饰器。首先,详细解释了函数递归的基本定义,强调了递归必须包含退出条件。接着,通过阶乘的例子展示了递归的应用,并对比了递归与非递归实现的效率。然后,转向装饰器,介绍了装饰器作为函数的特性,用于给其他函数添加新属性或行为。装饰器的语法和使用场景,如使用闭包实现装饰器和利用`wraps()`保留原函数属性的方法,也被详细阐述。最后,提到了装饰器中如何处理带参数的函数,尤其是通过闭包和万能参数`*args, **kwargs`来传递参数。" 121633932,11585824,HTML5+CSS个人主页设计:大学生活记录,"['HTML', 'CSS', '前端开发', '网页设计', '作业']
摘要由CSDN通过智能技术生成

函数的递归

定义

"""

 递归是指函数在执行过程中调用了本身。简单来说就是自己调用了自己

 1.自己调用自己

 2.一定要有一个条件,进行退出调用

"""

代码

"""

 递归是指函数在执行过程中调用了本身。简单来说就是自己调用了自己

 1.自己调用自己

 2.一定要有一个条件,进行退出调用

"""

 阶乘:

  比如说给一个数据5,阶乘5*4*3*2*1

  n = 5*(5-1)

  n =n*(4-1)

  n =n*(3-1) 

  n =n*(2-1)

    

总结规律

 n! = n*(n-1)

def func_jc(n):

  if n==1:

    return 1

  else:

    return n*func_jc(n-1)



print(func_jc(5)) #120

 函数递归

def func_fb(n):

    if n==0 or n==1:

        return 1

    else:

        return func_fb(n-2)+func_fb(n-1)



print(func_fb(5) ) #8

 非递归

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值