Python 模糊查询文件取最新
时间: 2024-09-20 13:13:23 浏览: 34
在Python中,如果你想要模糊查询并取文件列表中的最新文件,可以结合`fnmatch`模块(用于模式匹配文件名)和上述的`os`模块。首先,列出所有符合特定模式(比如`.txt`, `.docx`, 等)的文件,然后基于修改时间选择最新的那个。以下是一个例子:
```python
import fnmatch
import os
from datetime import datetime
def fuzzy_search_latest(pattern):
current_dir = os.getcwd()
file_list = []
# 遍历当前目录及其子目录
for root, _, files in os.walk(current_dir):
for filename in fnmatch.filter(files, pattern):
file_path = os.path.join(root, filename)
file_list.append((file_path, os.path.getmtime(file_path)))
# 将元组列表按修改时间倒序排序
latest_files = sorted(file_list, key=lambda x: x[1], reverse=True)
# 返回最新文件的路径
return latest_files[0][0] if latest_files else None
# 示例:获取所有.txt文件中最新的
latest_txt_file = fuzzy_search_latest('*.txt')
print(f"最新.txt文件是:{latest_txt_file}")
阅读全文