python - 往返纪元时间戳的最佳方法是什么?

标签 python

我正在尝试让纪元时间戳正确往返。我不明白为什么当我这样做时没有得到相同的纪元 ts:

In [1]: import datetime, pytz

In [2]: datetime.datetime.fromtimestamp(1441151100, tz=pytz.utc).strftime("%s")
Out[2]: '1441179900'

我以为我在这里处理所有 UTC,但由于某种原因,上面的 strftime 返回了不同的纪元时间戳。为什么?

最佳答案

这将为您提供往返旅行

>>> (datetime.datetime.fromtimestamp(1441151100, tz=pytz.utc) - datetime.datetime(1970, 1, 1, tzinfo=pytz.utc)).total_seconds()
1441151100.0

如果您使用的是 Python 3.3+,您可以将其简化为:

datetime.datetime.fromtimestamp(1441151100, tz=pytz.utc).timestamp()

关于python - 往返纪元时间戳的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32363824/

相关文章:

python - openpyxl 导入时请不要将文本假定为数字

Python在拆分中跳过连续的分隔符

python - 如何从python获取密码查询的执行时间?

python - 拟合某些参数固定的双峰高斯分布

python - 在 Windows 上为 PostgreSQL 12 安装 PL/Python

python - 解析 1000 年之前的日期

python - 精确但没有尾随 0 的圆 Pandas 列

python - Tkinter 标签图像无边框

python - 如何从 Python 脚本在 Paraview 中创建交互式窗口?

python - Pandas DataFrame 基于第一行值的条件前向填充