python大作战之递归和高阶函数

今天跟大家先初步的探讨下递归和高阶函数

a-关于递归的定义:

在函数内部,可以调用其他函数,如果一个函数在内部又调用自身本身,这函数就是递归操作。

b-了解递的特性:

1:必须有一个明确的结束条件。

2:每次进入更深一层递归时,问题的规模与上一次递归相比,应该有所减少。

3:递归的效率不高,递归层次过多,导致栈溢出。

c-我们直接用例子来演示下递归的具体操作:

def cal(n):
    print(n)
    if int(n/2) > 0:
        return cal(int(n/2))
    print(n)
cal(10)
在这个例子中,return语句中调用原函数cal,就是体现了递归思想

同时也有一个明确的结束就是不大于0就不进行递归的调用。


高阶函数:

定义:变量可以指向函数,函数的参数能接收变量,那么 一个函数就可以接收另一个函数作为参数。

我们直接上例子来说明:

def fjh(a,b,f):
    return f(a)+f(b)
    print('这就是高阶函数的调用')
fsh=fjh(2,-4,abs)
print(fsh)
上述例子中abs具有数学意义中取绝对值的作用,fjh方法中的f变量所代指的就是abs操作,f(a)和f(b)其实

使用了abs的方法,通俗讲就是取绝对值,abs是python内置的方法

好了,今天和大家初步了解并学习了python中用的比较广的递归操作和高阶函数,后续在学习函数这一模块中会用到的,谢谢!




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值