You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何按指定日期范围过滤目录下日期命名的parquet文件

按日期范围筛选指定格式文件的Python实现

需求背景

需要遍历指定目录下命名规则为file_YYYY-MM-DD.parquet的文件,筛选出落在指定日期间隔内的文件并返回路径列表。
示例目录结构如下:

I:/directory
├── file_2019-01-01.parquet
├── file_2019-01-02.parquet
├── file_2019-01-03.parquet
├── file_2019-01-04.parquet
└── ...

完整实现代码

import os
import pandas as pd

def pull_files(start, stop, dir_path="I:/directory"):
    # 生成目标日期序列
    my_days = pd.date_range(start=start, end=stop)
    # 转成文件名对应的日期字符串格式
    target_date_strs = [dt.strftime("%Y-%m-%d") for dt in my_days]
    
    matched_paths = []
    # 遍历目录下所有文件
    for filename in os.listdir(dir_path):
        # 仅匹配符合命名规则的文件
        if filename.startswith("file_") and filename.endswith(".parquet"):
            # 提取文件名中的日期部分
            file_date = filename[5:-8]
            if file_date in target_date_strs:
                # 拼接完整路径加入结果列表
                matched_paths.append(os.path.join(dir_path, filename))
    
    return matched_paths

# 调用示例
result = pull_files('2019-01-02','2019-01-04')
print(result)

逻辑说明

  • 先根据输入的起止日期生成所有需要匹配的日期字符串,和文件名中的日期格式完全对齐
  • 遍历目录时先过滤文件名前缀和后缀,避免无关文件干扰匹配
  • 提取文件名中的日期部分和目标日期列表比对,匹配成功则返回完整路径
  • 调用示例默认返回2019-01-02、2019-01-03、2019-01-04三个文件的完整路径

内容的提问来源于stack exchange,提问作者LoF10

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 09:21:03