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

Python3获取不同目录下文件名及创建日期问题求助

问题解决:获取文件创建日期错误的修正

你的代码核心问题是始终读取根目录的创建时间,而非当前遍历到的目标文件的创建时间:os.path.getctime(pt)中的pt是你指定的根路径,导致所有文件输出的都是同一个日期。

修正后的代码

import os, pandas as pd, datetime

l = []
pt = r"C:\Users\ndofi.vontade\OneDrive - Jupiter Desenvolvimento Informatico LTDA\Documentos\Jupiter\BI"
count = 0
for dirpath, dirname, filename in os.walk(pt):
    for file in filename:
        count += 1
        # 拼接当前文件的完整绝对路径
        full_file_path = os.path.join(dirpath, file)
        # 获取当前文件的创建时间
        date_mod = os.path.getctime(full_file_path)
        dt_m = datetime.datetime.fromtimestamp(date_mod)
        l.append((full_file_path, dt_m))
        print(count, file, dt_m)

关键修改说明

  • 用os.path.join(dirpath, file)拼接每个文件的完整路径,确保指向当前遍历的目标文件
  • 将os.path.getctime(pt)替换为os.path.getctime(full_file_path),读取对应文件的创建时间

补充:os.path.getctime()在Windows下返回文件创建时间,但在Unix/Linux系统中返回的是文件元数据最后修改时间。如果需要跨平台获取创建时间,可尝试pathlib模块的stat().st_birthtime(仅支持部分系统)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 11:45:37