#匿名函数
#语法
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\学习文件’) #调用给路径