1 / 8
文档名称:

《Python教学课件》第5章函数与模块-4.pptx

格式:pptx   大小:734KB   页数:8页
下载后只包含 1 个 PPTX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《Python教学课件》第5章函数与模块-4.pptx

上传人:autohww 2020/11/24 文件大小:734 KB

下载得到文件列表

《Python教学课件》第5章函数与模块-4.pptx

文档介绍

文档介绍:Python 函数与模块
匿名函数
匿名函数是指没有函数名的简单函数,只可以包含一个表达式,不允许包含其他复杂的语句,表达式的结果是函数的返回值。
Python使用lambda来创建匿名函数,在lambda表达式中封装简单的逻辑,其主体仅是一个表达式而不需要使用代码块。
匿名函数适合于处理不再需要在其他位置复用代码的函数逻辑,可以省去函数的定义过程和考虑函数的命名,让代码更加简洁,可读性更好。其通式为:
<函数对象名>=lambda <形式参数列表>:<表达式>
匿名函数
例如:
def add (x,y):
return x+y
可定义为匿名函数:
func=lambda x,y: x+y
函数对象名可以作为函数直接调用,对于上例,可以这样调用:
a,b=,
sum+=func(a,b)
或直接调用:
(lambda x, y:x+y) (, )

递归函数
递归函数是指直接或间接调用函数本身的函数。递归函数反映了一种逻辑思想,用它来解决某些问题时显得很简练。
递归(Recursion)是一种直接或者间接调用函数自身的算法,其实质是把问題分解成规模缩小的同类子问题,然后递归调用表示问题的解。
能够设计成递归算法的问题必须满足两个条件:能找到反复执行的过程(调用自身)和能找到跳出反复执行过程的条件(递归出口)。
递归函数
例 设n为大于等于1的正整数,用函数递归的方法求阶乘n!,本例求解5!。
分析:n!可表示为:
由此可以设计一个计算阶乘的函数recursive(n),调用自己并返回n* recursive(n-1)。
递归函数
代码如下:
def recursive(n):
if n==1:
return 1
else:
return n*recursive(n-1)
a=5
print('%d!=%d'%(a, recursive (a)))
例 计算Fibonacci数列第15项的值。
分析:Fibonacci数列的前两项是0和1,除前两项外,以后每项的值均等于其前两项之和。由此可设计函数。即0,1,1,2,3,