python, 读取目录下的文件列表
在 Python 中,你可以使用 os
模块或 pathlib
模块来读取目录下的文件列表。以下是这两种方法的具体示例:
方法一:使用 os
模块
os.listdir()
可以列出指定目录下的所有条目(包括文件和子目录),如果你只是想要文件,可以结合 os.path
进行过滤。
import os
# 指定目录路径
directory = '/path/to/your/directory'
# 列出目录下的所有文件和目录
entries = os.listdir(directory)
# 过滤出文件
files = [entry for entry in entries if os.path.isfile(os.path.join(directory, entry))]
# 输出文件列表
print("文件列表:")
for file in files:
print(file)
方法二:使用 pathlib
模块(Python 3.4+)
pathlib
提供了更现代化的方式来操作路径名。使用 Path.iterdir()
可以直接获取目录条目。
from pathlib import Path
# 指定目录路径
directory = Path('/path/to/your/directory')
# 使用 iterdir() 列出文件
files = [f for f in directory.iterdir() if f.is_file()]
# 输出文件列表
print("文件列表:")
for file in files:
print(file.name) # 输出文件名
说明
os.listdir()
: 列出目录中的所有条目,返回一个列表。需要注意该列表包含文件和目录。os.path.isfile()
: 检查路径是否为文件,以便过滤列表,只获取文件。Path.iterdir()
: 在pathlib
中遍历目录,返回目录中所有内容(包括文件和目录)。兼容性:
os
模块兼容性好,适用于所有 Python 版本。pathlib
提供更强的面向对象接口,推荐在 Python 3.4+ 中使用。
选择哪个方法要根据你的个人偏好和项目的需求来定。pathlib
更加现代和灵活,但 os
模块在更老的代码中也很常见和可靠。