Python:获取高于秒的文件修改时间

6 投票
4 回答
2725 浏览
提问于 2025-04-15 12:00

os.path.getmtime()os.stat() 这两个函数好像只返回整秒的时间值。

在Windows或者OSX的文件系统中,这是不是能获取的最高精度呢?有没有办法获取更精确的文件时间呢?

4 个回答

5

HFS+(这是OS X使用的一种文件系统)在日期和时间的精确度上是以“秒”为单位的,也就是说,它能精确到每一秒。

4

os.stat()的文档里有一段说明:

st_atime、st_mtime 和 st_ctime 这些成员的具体含义和精确度,取决于你使用的操作系统和文件系统。举个例子,在使用 FAT 或 FAT32 文件系统的 Windows 系统上,st_mtime 的精确度是 2 秒,而 st_atime 只有 1 天的精确度。想了解更多细节,可以查阅你操作系统的相关文档。

比如在Windows上,表示文件时间的 FILETIME 结构使用的是 100 纳秒的精确度。我本以为 Python 应该“知道”这些,并给出最好的精确度。你是不是在使用 FAT 文件系统的文件呢?

撰写回答