5

os.path.getmtime()并且os.stat()似乎只在整秒内返回值。

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

4

4 回答 4

5

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

st_atime、st_mtime 和 st_ctime 成员的确切含义和解析取决于操作系统和文件系统。例如,在使用 FAT 或 FAT32 文件系统的 Windows 系统上,st_mtime 的分辨率为 2 秒,而 st_atime 的分辨率仅为 1 天。有关详细信息,请参阅您的操作系统文档。

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

于 2009-06-03T07:44:30.127 回答
4

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

于 2009-06-03T07:46:47.020 回答
1

Pythonos模块中所述,它是操作系统特定功能的可移植接口。根据您运行的平台,您将获得不同的行为。

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

于 2009-06-03T07:55:03.337 回答
0

Python 3 os.stat() 包含具有纳秒分辨率的 st_atime_ns、st_ctime_ns、st_mtime_ns 属性,取决于文件系统保存的时间结构。见:https ://docs.python.org/3/library/os.html

于 2021-04-07T12:07:25.630 回答