python 中的递归演示

递归函数

递归就是一个函数在它本身内调用它自己。 执行递归函数将反复调用自己, 每一次调用就会进入新的一层,递归函数必须要有结束条件。

当函数一直递推直到遇到墙后但返回,这个墙就是结束条件。

所以递归的两个要素就是 结束条件和递推关系。

 1 def file_collect(path):
 2     file_list=[]
 3     #如果文件夹不存在则返回空,并提示
 4     if os.path.exists(path=path):
 5         for f in os.listdir(path=path): #如果存在就获取当前文件夹的所有内容,包括子文件夹,
 6             # print(f)#当前获取到的是文件名或者是子文件夹名字, 需要补全具体路径
 7             new_path=path+'/'+f
 8             #再判断新路径是否为文件夹
 9             if os.path.isdir(new_path):
10                 file_list+=file_collect(new_path)
11             #判断获取到的对象是文件还是文件夹    
12                 
13             else:#否则就是文件名, 则加入到文件列表
14                 # print(type(file_list))
15                 # print(new_path)
16                 file_list.append(new_path)
17     else:
18         print(f"指定的文件夹{path}不存在。")
19         return []
20     return file_list

 

posted @ 2022-12-08 17:02  benson_zhou  阅读(80)  评论(0)    收藏  举报