python函数的特殊形式

python还支持两种特殊形式的函数,即匿名函数和递归函数。

(一)匿名函数

匿名函数是无需函数名标识的函数,它的函数体只能是单个表达式。python中使用关键字 lambda定义匿名函数。

(1)匿名函数与普通函数的主要不同:

1、普通函数需要使用函数名进行标识,匿名函数则不需要使用函数名进行标识。

2、普通函数的函数体中可以有多条语句,匿名函数只能是一个表达式。

3、普通函数可以实现比较复杂的功能,匿名函数只能实现比较单一的功能。

4、普通函数可以被其他程序使用,匿名函数不能被其他程序使用。

为了方便使用匿名函数,应该使用变量记录此匿名函数:

代码举例如下:

seco = lambda s,h:(s*h)*0.5   #使用变量seco记录匿名函数,并通过seco调用该函数
print(seco(3,4))




运行结果:
6.0

Process finished with exit code 0

(二)递归函数

递归就是一个函数过程在定义中直接或者间接调用自身的一种方法,(如果一个函数中调用了函数本身,这个函数就是递归函数。)

注:递归函数在调用时,需要确定递归公式边界条件。边界条件就是终止条件,用于终止递归。

代码举例如下:

def fac(num):          #此递归函数可用于求阶乘
    if num==1:
        return 1
    else:
        return num*fac(num-1)
print(fac(5))   #求5!(5的阶乘)





运行结果:
120

Process finished with exit code 0

今天的分享就先到这里啦,如果有不懂或者想要了解的其他内容欢迎在评论区留言哦,希望能得到大家的点赞关注,谢谢观看!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值