当你要在一个文件夹中查找特定名称和格式的文件时,你可以使用 Python 的 `os` 和 `fnmatch` 模块。以下是一个简单的脚本示例,它可以在指定目录中查找文件:
import os
import fnmatch
def find_files(directory, pattern):
"""
在指定目录中查找符合指定模式的文件
Parameters:
- directory: 待查找的目录
- pattern: 文件名的模式,可以包含通配符
Returns:
- 匹配的文件路径列表
"""
matches = []
for root, _, filenames in os.walk(directory):
for filename in fnmatch.filter(filenames, pattern):
file_path = os.path.join(root, filename)
matches.append(file_path)
return matches
# 例子:在当前目录中查找所有以 ".txt" 结尾的文件
directory_to_search = "." # 你可以修改为你想要搜索的目录
file_pattern = "*.txt"
found_files = find_files(directory_to_search, file_pattern)
if found_files:
print("找到以下文件:")
for file_path in found_files:
print(file_path)
else:
print("未找到匹配的文件。")
在这个脚本中,`find_files` 函数接受一个目录和一个文件名的模式,然后使用 `os.walk` 遍历目录中的文件,使用 `fnmatch.filter` 进行模式匹配。匹配的文件路径被添加到 `matches` 列表中,最后返回这个列表。
你可以根据需要修改 `directory_to_search` 和 `file_pattern` 的值,以适应你实际想要查找的文件。