首页 > 解决方案 > Python - 它从文件夹返回修改日期

问题描述

我有以下代码,以便从文件夹中存在的文件中获取最后修改日期:

path = 'C://Reports//Script//'

modTimesinceEpoc = os.path.getmtime(path)
modificationTime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(modTimesinceEpoc))
modificationTime = datetime.strptime(modificationTime, '%Y-%m-%d %H:%M:%S')

但这会返回文件夹中的修改日期,我只想检查文件中的修改日期,因为我不想知道文件夹中的修改日期。

如何更新我的代码?

标签: pythondate

解决方案


您需要列出目录中的所有文件并在此之后找到时间戳。下面是一个示例代码。

更新 - 分别添加了对 Windows 和 Linux 的处理。

import os
import time
import platform
from datetime import datetime

path = 'C://Reports/Script/'
files_path = ['%s%s'%(path, x) for x in os.listdir(path)]

print platform.system()

for file_p in files_path:
    if platform.system() == 'Windows':
        modTimesinceEpoc = os.path.getctime(file_p)
    else:
        statbuf = os.stat(file_p)
        modTimesinceEpoc = statbuf.st_mtime

    modificationTime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(modTimesinceEpoc))
    modificationTime = datetime.strptime(modificationTime, '%Y-%m-%d %H:%M:%S')

    print file_p, modificationTime

推荐阅读