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

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

你可能感兴趣的:(python,python)