python 各种遍历文件夹的方法
创始人
2025-01-09 05:32:13
0

Python 提供了一些库,可以帮助我们实现文件夹遍历。在本文中,我将介绍三种常用的遍历文件夹的方法,并且给出每种方法的使用示例和优缺点分析。

方法一:os.walk()

 os.walk() 是 Python 中最常用的遍历文件夹的方法。这个方法会自动地递归遍历文件夹中的所有子文件夹。在遍历过程中,返回的是一个元组(root, dirs, files),其中 root 表示当前遍历到的文件夹的路径,dirs 表示当前文件夹下的子文件夹,files 表示当前文件夹下的所有文件。

import os  # 遍历文件夹 def traversal_folder(folder_path):     for root, dirs, files in os.walk(folder_path):         # 遍历当前文件夹下的所有文件         for file_name in files:             file_path = os.path.join(root, file_name)             print(file_path)  # 调用函数 folder_path = r"D:\data" traversal_folder(folder_path) 

优点:os.walk() 能够自动遍历文件夹下的子文件夹,无需手动递归。

缺点:对于大型文件夹,os.walk() 会占用大量的内存,因为它需要把所有的文件都存储在内存中,会导致程序崩溃。

方法二:os.listdir()

os.listdir() 是 Python 中另一种常用的遍历文件夹的方法。这个方法会返回指定路径下的所有文件和文件夹的列表,但是不会递归遍历。

import os  # 遍历文件夹 def traversal_folder(folder_path):     for file_name in os.listdir(folder_path):         file_path = os.path.join(folder_path, file_name)         print(file_path)  # 调用函数 folder_path = r"D:\data" traversal_folder(folder_path) 

优点:os.listdir() 执行速度比 os.walk() 更快。

缺点:os.listdir() 不会递归遍历,如果需要递归遍历的话,还需要在函数中加入递归操作。

方法三:glob.glob()

glob.glob() 是 Python 中一种使用比较少见的遍历文件夹的方法。这个方法会根据指定的文件名模式匹配到的所有文件和文件夹,并以一个列表的形式返回。类似于 os.listdir(),不会递归遍历。

import glob  # 遍历文件夹 def traversal_folder(folder_path):     for file_path in glob.glob(os.path.join(folder_path, '*')):         print(file_path)  # 调用函数 folder_path = r"D:\data" traversal_folder(folder_path) 

优点:glob.glob() 使用简单,代码量少。

缺点:glob.glob() 不会递归遍历,如果需要递归遍历的话,还需要在函数中加入递归操作。

结论

       以上就是三种常用的 Python 遍历文件夹的方法。在实际使用中,我们可以根据具体情况选择不同的方法来实现文件夹的遍历。如果需要递归遍历,建议使用 os.walk() 方法,如果只需要遍历当前文件夹,建议使用 os.listdir() 或 glob.glob() 方法。

 

相关内容

热门资讯

透视好牌!wepoekr底牌透... 透视好牌!wepoekr底牌透视(透视)外挂透明挂辅助安装(一向真的是有挂)关于机制的,其中提到了后...
透视辅助!wepoker辅助是... 透视辅助!wepoker辅助是真的假的,晃晃游戏辅助下载,AI教程(有挂黑科技)1、进入到晃晃游戏辅...
透视透视!德普之星怎么作弊(透... 透视透视!德普之星怎么作弊(透视)详细教程(果然是有挂)1、首先打开德普之星怎么作弊最新版本,在德普...
透视挂!wepoker底牌透视... 透视挂!wepoker底牌透视脚本http(透视)外挂透明挂辅助软件(原本是有挂),支持语音通讯、好...
透视透视!德普之星透视辅助软件... 透视透视!德普之星透视辅助软件下载(透视)解说技巧(总是是有挂);1、每一步都需要思考,不同水平的挑...
透视挂!wepoker透视底牌... 透视挂!wepoker透视底牌,福建十三水辅助,新版2025教程(有挂解密)福建十三水辅助辅助器中分...
透视攻略!德普之星有没有挂(透... 1、透视攻略!德普之星有没有挂(透视)外挂透明挂辅助挂(真是是真的有挂)(UU poker、、xpo...
透视了解!hhpoker德州透... 透视了解!hhpoker德州透视挂,宝宝游戏浙江辅助器,解密教程(有挂技巧);1、起透看视 宝宝游戏...
透视软件!wpk透视脚本链接(... 透视软件!wpk透视脚本链接(透视)玩家教你(总是存在有挂)1、构建自己的wpk透视脚本链接辅助插件...
透视计算!wepoker底牌透... 1、透视计算!wepoker底牌透视脚本http(透视)外挂透明挂辅助神器(从来真的有挂)。2、we...