Python中的递归及案例演示
创始人
2024-05-13 19:43:26

目录

一.什么是递归

二.案例

递归找文件

 步骤

os模块中的三个方法

演示

 最终代码

三.总结


 

一.什么是递归

递归在编程中是一种非常重要的算法
递归:即方法(函数)自己调用自己的一种特殊编程写法

如:

函数调用自己,即称之为递归调用。

 

 

二.案例

递归找文件

如图,在D:/test文件夹内,有如下嵌套结构和所属的文件,可以通过递归编程的形式完成

 

 

 步骤

os模块中的三个方法

  1. os.listdir()                #列出路径下的内容 
  2. os.path.isdir()        #判断该路径是不是文件夹
  3. os.path.exists()        #判断该路径是否存在

演示

import os
#列出该路径的内容
print(os.listdir("D:/test"))
#判断指定路径是不是文件夹
print(os.path.isdir("D:/test"))
#判断指定路径是否存在
print(os.path.exists("D:/test"))

结果是

 最终代码

import os
def get_wenjian(path):jiegou = []if os.path.exists(path):#判断路径是否存在,这里是路径存在for i in os.listdir(path):#print(i)       这一语句的输出结果是path路径下的文件名new_path=path+'/'+iif os.path.isdir(new_path):#判断该路径是不是文件夹,这里是文件夹jiegou += get_wenjian(new_path)else:#这里不是文件夹,而是普通文件jiegou.append(i)else:#这里是路径不存在print(f"该路径{path}不存在")return []return jiegou
result=get_wenjian("D:/test")
print(result)
for i in result:print(i)

结果是

 

三.总结

1.什么是递归
在满足条件的情况下,函数自己调用自己的一种特殊编程技巧
2.递归需要注意什么?

  • 注意退出的条件,否则容易变成无限递归
  • 注意返回值的传递,确保从最内层,层层传递到最外层

3.os模块的3个方法

  • os.listdir,列出指定目录下的内容
  • os.path.isdir,判断给定路径是否是文件夹,是返回True,否返回False
  • os.path.exists,判断给定路径是否存在,存在返回True,否则返回False

 

相关内容

热门资讯

职业生涯中哪些事比工资更重要 ...   身处职场,要想获得成功,你必先学会聪明的工作,要知道聪明的工作比勤奋的工作更能促进个人成功,然而...
员工职业生涯规划建设的意义 员...   1.对企业的贡献   职涯建设能系统梳理员工能力的信息,实现公司需求与个人能力的匹配,有助于增长...
大学生职业生涯规划 大学生职业...   就大学生职业生涯规划而言,首要考虑的问题就是确定职业目标:一、未来的职业发展方向是做一名管理者。...
从乔布斯的成功看职业规划 乔布...   乔布斯是一个传奇,他的特殊经历已经证明了这个事实。一个人职业生涯的成功不是偶然的,我们必须抓住精...
缺乏职业规划导致我国大学生频繁...   虽说社会上竞争越来越激烈,一份稳定的工作来之不易,但频繁跳槽的大学生还是越来越多。一项权威的中国...