如何获取文件最后在 Python 中修改的时间? [复制]

Posted

技术标签:

【中文标题】如何获取文件最后在 Python 中修改的时间? [复制]【英文标题】:How do I get the time a file was last modified in Python? [duplicate] 【发布时间】:2010-09-27 08:54:53 【问题描述】:

假设文件存在(使用os.path.exists(filename) 首先确保它存在),我如何显示文件最后修改的时间?如果这有什么不同的话,这是在 Linux 上。

【问题讨论】:

【参考方案1】:

os.stat()

import os
filename = "/etc/fstab"
statbuf = os.stat(filename)
print("Modification time: ".format(statbuf.st_mtime))

Linux 不记录文件的创建时间 (for most fileystems)。

【讨论】:

谢谢。 Linux 似乎不存储文件创建时间。似乎我应该知道这一点。 :)【参考方案2】:
>>> import os
>>> f = os.path.getmtime('test1.jpg')
>>> f
1223995325.0

从(纪元)开始

【讨论】:

谢谢,这很有帮助。这似乎是解决我的具体问题的更直接的方法,但 os.stat 解决方案提供了更多信息。 我不知道有一个明确的功能。我猜是生活和学习。 可能是更便携的解决方案 感谢您的解决方案 这是针对特定问题的最佳答案。更通用的统计信息提供更多信息,并且在需要额外信息时更可取,但当不需要时 - 就像在此处询问的场景中一样 - 这些无关信息和额外层只是不必要的负担。【参考方案3】:

python 3.4+ 的新功能(请参阅:pathlib)

import pathlib

path = Path('some/path/to/file.ext')
last_modified = path.stat().st_mtime

【讨论】:

当您有绝对路径并且不确定操作系统时,pathlib 似乎对于获取文件很有用。但是,如果您可以假设有问题的文件与您的脚本位于同一目录中,那么其他方法似乎更容易。 pathlib 处理相对路径。 在这种情况下,我看不出pathlib.Path("file.ext").stat()os.stat("file.ext") 之间的区别。 pathlib 旨在提供一种面向对象的方法来获取 os 和 stat 中的许多功能。它不是为了取代,而是为了生活。此外,当您需要传递路径并且想要访问文件信息或直接打开文件时,它会变得更加方便。 2021 年的正确答案!

以上是关于如何获取文件最后在 Python 中修改的时间? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何根据特定日期获取最后修改的文件并导入python脚本[重复]

如何获取 ADLS Gen2 文件的最后修改日期并将其保存到 python 中的 csv

如何在文件系统中获取最后修改的日期和时间?

如何在java中获取目录的最后修改日期和时间

如何在Filesystem中获取最后修改日期和时间?

如何获取提交文件中最后触及的行:PyDriller?