迭代给定目录中的文件
在编程上下文中,您可能会遇到需要处理或操作特定目录中的文件的情况。这是一种有效迭代给定目录中文件的简单方法。
Python 3.6 解决方案
Python 的 os 模块提供了 listdir() 函数来列出目录中的文件。假设您的目录路径存储在字符串变量(目录)中,以下代码片段列出了 .asm 文件:
import os directory = os.fsencode(directory) for file in os.listdir(directory): filename = os.fsdecode(file) if filename.endswith(".asm"): # Perform actions on .asm files continue else: continue
Pathlib 递归
Pathlib 提供了递归方法。使用 Path 对象,您还可以在子目录中搜索 .asm 文件:
from pathlib import Path pathlist = Path(directory).rglob('**/*.asm') for path in pathlist: path_in_str = str(path) # Perform actions on .asm files
原始答案
下面的代码提供了一个简单的示例:
import os for filename in os.listdir("/path/to/dir/"): if filename.endswith(".asm") or filename.endswith(".py"): # Perform actions on .asm and .py files continue else: continue
此代码迭代目录中的所有文件,过滤具有指定扩展名的文件。找到符合条件的文件后,您可以在继续块中执行必要的操作。重要的是,使用 else 排除文件可确保仅处理相关文件。
通过遵循这些方法,您可以有效地迭代给定目录中的文件,从而为各种文件处理任务提供了可能性。
以上是如何在Python中高效地遍历特定目录中的文件?的详细内容。更多信息请关注PHP中文网其他相关文章!