下面是Python文件操作之目录遍历实例分析的完整攻略。
1. 利用os模块进行目录遍历
1.1. os模块简介
os模块是Python的标准库之一,包含了操作文件系统的接口。它提供了跨平台的文件、目录操作函数,使得Python程序可以在不同的操作系统上运行。
os模块中涉及到的函数较多,下面只列出与目录遍历相关的函数:
- os.listdir(path): 返回指定路径下的所有文件列表。
- os.path.isdir(path): 判断指定路径是否是一个目录。
- os.path.isfile(path): 判断指定路径是否是一个文件。
1.2. os.walk()函数使用示例
os.walk()函数用于遍历目录及其子目录内的内容,返回值是一个三元组(root, dirs, files),其中root是指当前的根目录,dirs是当前根目录下的子目录列表,files是当前根目录下的文件列表。
下面是一个遍历指定目录及其子目录下所有文件并打印路径的实例:
import os
def print_files(path):
for root, dirs, files in os.walk(path):
for file in files:
file_path = os.path.join(root, file)
print(file_path)
# 将指定目录替换为实际需要遍历的目录
print_files('D:\\example')
1.3. os.listdir()函数使用示例
os.listdir()函数返回指定路径下的目录和文件列表,对于目录列表,可以递归遍历其中的子目录。
下面是一个遍历指定目录及其子目录下所有文件并打印路径的实例:
import os
def print_files(path):
for file_name in os.listdir(path):
file_path = os.path.join(path, file_name)
if os.path.isfile(file_path):
print(file_path)
elif os.path.isdir(file_path):
print_files(file_path)
# 将指定目录替换为实际需要遍历的目录
print_files('D:\\example')
2. 利用pathlib模块进行目录遍历
2.1. pathlib模块简介
pathlib模块是在Python 3.4中引入的一个新模块,用于处理路径相关操作。它提供了一种面向对象的路径表示方式,可以轻松地进行文件、目录、路径的操作。
2.2. pathlib.Path类使用示例
Path类是pathlib模块的核心类,可以用于表示文件、目录等路径。Path类的一些常用方法包括:
- Path.cwd(): 返回当前工作目录的Path对象。
- Path.iterdir(): 返回当前目录的所有路径,返回一个生成器。
- Path.is_dir(): 判断路径是否为目录。
- Path.is_file(): 判断路径是否为文件。
下面是一个遍历指定目录的所有文件及其子目录下的文件并打印路径的实例:
import pathlib
def print_files(path):
for p in path.iterdir():
if p.is_file():
print(p)
elif p.is_dir():
print_files(p)
# 将指定目录替换为实际需要遍历的目录
print_files(pathlib.Path('D:/example'))
2.3. pathlib.Path.glob()方法使用示例
Path.glob()方法用于根据通配符匹配文件路径,并返回满足条件的所有路径。具体使用方法如下:
import pathlib
# 将指定目录替换为实际需要遍历的目录
for file in pathlib.Path('D:/example').glob('**/*.*'):
print(file)
上述代码会遍历指定目录下的所有文件,包括子目录下的文件。其中**/*.*
代表匹配所有以.
为后缀的文件。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python文件操作之目录遍历实例分析 - Python技术站