Python:以超过一秒的分辨率获得文件修改时间

Python:以超过一秒的分辨率获得文件修改时间,python,windows,macos,filesystems,timestamp,Python,Windows,Macos,Filesystems,Timestamp,os.path.getmtime() 这是Windows或OSX文件系统上可能达到的最高分辨率,还是有办法在文件时间上获得更高的分辨率?有一条说明: 正确的含义和解决方案 时间、时间和时间 成员取决于操作系统 系统和文件系统。对于 例如,在使用 FAT或FAT32文件系统,st_mtime 具有2秒的分辨率,并且 只有1天的分辨率。看你的 的操作系统文档 细节 例如,用于表示文件时间的FILETIME结构使用100纳秒的分辨率。我希望Python“知道”这一点,并为您提供尽可能最好的解决方案。您

os.path.getmtime()

这是Windows或OSX文件系统上可能达到的最高分辨率,还是有办法在文件时间上获得更高的分辨率?

有一条说明:

正确的含义和解决方案 时间、时间和时间 成员取决于操作系统 系统和文件系统。对于 例如,在使用 FAT或FAT32文件系统,st_mtime 具有2秒的分辨率,并且 只有1天的分辨率。看你的 的操作系统文档 细节

例如,用于表示文件时间的FILETIME结构使用100纳秒的分辨率。我希望Python“知道”这一点,并为您提供尽可能最好的解决方案。您是否可能正在使用FAT文件系统上的文件?

HFS+(由OS X使用)的日期分辨率为。

如中所述,它是操作系统特定功能的便携式接口。根据您运行的平台,您将获得不同的行为


具体来说,
stat
调用返回的修改时间取决于文件所在的文件系统。例如,对于FAT文件系统中的条目,修改时间的最佳分辨率为2秒。其他文件系统将具有不同的分辨率。

Python 3 os.stat()包含具有纳秒分辨率的st_atime、st_ctime、st_mtime属性,具体取决于文件系统保存的时间结构。请参阅:

这些文件是在OSX文件系统上编写的,只有在Windows系统上修改时才显示出更高的分辨率。您链接到的Wikipedia文章不再提及HFS+的时间分辨率。然而,我在约翰·西拉库萨的《狮子评论》中得到了证实。我认为唯一的声明是信息框中的“日期解析”,它仍然存在。不是最好的来源。。。还有一个问题,比如说,尽管现在可能已经很过时了,但MacOSX还是有办法存储2040年之后的修改日期。