UTC 中的 Python os.path.getmtime 为啥

Posted

技术标签:

【中文标题】UTC 中的 Python os.path.getmtime 为啥【英文标题】:Python os.path.getmtime in UTC whyUTC 中的 Python os.path.getmtime 为什么 【发布时间】:2021-10-18 20:19:15 【问题描述】:

here 和 here 等几个问题和网站提到 Python 的 getmtime 根据文档 (return os.path.getmtime(fileName)) 返回 UTC。但是,我在documentation 中找不到函数为什么必须如此。为什么一定要这样?我担心它依赖于操作系统,我必须依赖它在 Windows、Linux 和 MacOS 上是一样的。

我正在使用 Python 3.6 和 3.8。

【问题讨论】:

【参考方案1】:

随时可见

... 值是一个浮点数,表示自纪元以来的秒数

根据定义,这是一个 utc 时间戳,因为纪元始终引用 1/1/1970 00:00 UTC

【讨论】:

尽管time 模块中的注释可能值得考虑:“对于 Unix,纪元是 1970 年 1 月 1 日 00:00:00 (UTC) . 要找出给定平台上的纪元,请查看 time.gmtime(0)。" @Carcigenicate on all3 OS 列出它始终是1/1/1970 00:00 UTC :) 但是是的,我想将来某个时候有人可能会逆势而上并破坏所有依赖于这一事实的软件

以上是关于UTC 中的 Python os.path.getmtime 为啥的主要内容,如果未能解决你的问题,请参考以下文章

检查 mongodb 中的日期时间对象是不是为 UTC 格式或不是来自 python

如何在Python日志记录中的GMT / UTC上设置时间戳?

在 Python 中将 datetime.date 转换为 UTC 时间戳

如何使用python将excel文件中的时间戳列表从UTC转换为旧金山时间(太平洋时间)? [复制]

Python 的 time.time() 是不是返回本地或 UTC 时间戳?

Python - 给定时间戳UTC和UTC偏移量的时区名称