概念:在一个函数内部不调用其他函数,而是自己本身的话,这个函数就是递归函数。
优点:看起来简单
缺点:容易导致栈溢出,占内存。
例子:
def jiecheng(n):标签:return,递归函数,python14,else,pass,print,path,os From: https://www.cnblogs.com/hellopxy/p/17383217.html
# result=1
# for item in range(1,n+1):
# result*=item
# pass
# return result
#
# print('结果为:{}'.format(jiecheng(5)))
import os
# def diguihanshu(n):
# if n==1:
# return 1
# else:
# return n*diguihanshu(n-1)
# pass
#
# print(diguihanshu(3))
def digui(n):
if n==1:
return 1
else:
return n*digui(n-1)
print(digui(5))
#递归案例:模拟实现树形结构的遍历
import os#引入文件操作模块
def findFile(file_Path):
listRs=os.listdir(file_Path)#得到该路径下所有文件
for fileItem in listRs:
full_path=os.path.join(file_Path,fileItem)#获取完整的文件路径
if os.path.isdir(full_path):#判断是否是文件夹
findFile(full_path)#如果是一个文件夹,再次递归
else:
print(fileItem)
pass
pass
else:
return
pass
print(findFile('C:\\Users\pengxinyu03\Desktop\Photoshop For Windows'))