#匿名函数
#语法

lambda 参数1,参数2,参数3,:表达式

#特点
#使用lambda关键字去创建
#没有名字的函数
#匿名函数冒号后面的表达式有且只有一个
#匿名函数自带return,而这个return的结果就是表达式计算后的结果
#lambda缺点
#lambda只能是单个表达式
#只能封装有限的逻辑,复杂必须使用def

def sum(x,y): return x+y print(sum(1,2)) sum=lambda x,y:x+y #通过变量调用匿名函数 print(sum(1,2)) age=input(‘nianling’) print(‘yes’ if int(age)>18 else ‘no’) #可以替换传统双分支写法 sum=lambda x,y:x if x>y else y print(sum(2,1)) print(sum(2,4)) sum=(lambda x,y:x if x>y else y)(5,6) #给参数赋值直接调用、 print(sum)

#递归
#自己调用自己
#必须有一个明确的结束条件
#优点:逻辑简单、定义简单
#缺点:容易导致栈溢出,内存资源紧张,甚至内存泄漏

def sum(n): if n==1: return 1 else: return n*sum(n-1) pass print(sum(3))

import os #引入文件操作模块
def findfile(file_Path):
listRs=os.listdir(file_Path)#拿到该路径下的所有文件夹
for fileitme in listRs:
full_path=os.path.join(file_Path,fileitme) #获取完整的文件路径
if os.path.isdir(full_path): #判断是否是文件夹
findfile(full_path) #如果是一个文件夹再次去递归
else:
print(fileitme)
pass
pass
else:
return
pass
findfile(‘E:\yun\学习文件’) #调用给路径