如何获取文件夹内文件的创建时间戳?[Python][CSV]
解决方法
你当前代码传入的是文件夹路径,os.path.getctime()自然返回的是文件夹本身的时间戳。要获取文件夹内文件的创建时间,需要先定位到文件夹里的任意一个文件,再调用该方法。
考虑到你有大量文件的文件夹,推荐用os.scandir()遍历,找到第一个文件就停止,避免不必要的资源消耗:
import os import datetime def get_file_create_time(folder_path): for entry in os.scandir(folder_path): if entry.is_file(): # 获取文件创建时间戳 c_time = os.path.getctime(entry.path) formatted_time = datetime.datetime.fromtimestamp(c_time) return c_time, formatted_time return None, None # 调用示例 target_folder = "你的目标文件夹路径" timestamp, dt = get_file_create_time(target_folder) if timestamp: print(f"文件创建时间戳: {timestamp}") print(f"格式化时间: {dt}") else: print("该文件夹内没有文件")
注意事项
- Windows系统下,
os.path.getctime()返回的是文件的创建时间; - Unix/Linux/macOS系统下,该方法返回的是文件元数据最后修改的时间。如果需要获取Unix系统下的文件创建时间(诞生时间),可以替换为
entry.stat().st_birthtime。
内容的提问来源于stack exchange,提问作者Volcano
相关产品推荐
相关产品推荐

