Python如何读取文件夹内最新修改的今日日期Excel文件并存储文件名到变量
Python 读取指定文件夹下今日最新修改xlsx文件的实现方案
使用Python标准库即可实现,无需安装第三方依赖,完整代码如下:
import os from datetime import datetime # 替换为你的xlsx文件存放文件夹路径,支持相对/绝对路径 target_folder = "/your/target/folder/path" # 获取今日日期(仅保留年月日,过滤时分秒) today_date = datetime.now().date() valid_files = [] for file_name in os.listdir(target_folder): # 仅筛选.xlsx格式的文件 if not file_name.endswith(".xlsx"): continue full_file_path = os.path.join(target_folder, file_name) # 跳过子文件夹,仅处理文件 if not os.path.isfile(full_file_path): continue # 获取文件修改日期,和今日日期比对 modify_date = datetime.fromtimestamp(os.path.getmtime(full_file_path)).date() if modify_date == today_date: # 存储修改时间戳和文件名,用于后续排序 valid_files.append((os.path.getmtime(full_file_path), file_name)) if valid_files: # 按修改时间倒序排序,取第一个即为最新文件 valid_files.sort(reverse=True, key=lambda x: x[0]) # 最新文件名存储到变量 latest_xlsx_name 中,可直接调用 latest_xlsx_name = valid_files[0][1] else: latest_xlsx_name = None print("未查询到今日修改的xlsx文件")
关键说明
- 若需要存储文件的完整路径而非仅文件名,将
valid_files.append中的file_name替换为full_file_path即可 - 若需要匹配
.xls格式文件,可将判断后缀的逻辑修改为if file_name.endswith((".xlsx", ".xls")): - 代码默认取运行当天的日期作为筛选条件,若需要自定义日期,可修改
today_date的赋值逻辑
内容的提问来源于stack exchange,提问作者Mariam Mehdi
相关产品推荐
相关产品推荐

