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