Python 将 UnixTimeStamp(带减号)转换为日期
Python Convert UnixTimeStamp (with Minus) to Date
我如何将 UnixTimeStamp 像 -266086800 (with Minus) 转换成 日期
>>> datetime.fromtimestamp('-266086800').strftime("%A, %B %d, %Y %I:%M:%S")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: an integer is required (got type str)
更新
修复时间戳作为字符串传递的错误后
datetime.datetime.fromtimestamp(-266086800)
出现另一个错误(Windows)
OSError: [Errno 22] Invalid argument
将参数从字符串更改为整数后,是否成功取决于平台。 fromtimestamp
使用 C localtime
函数并来自 classmethod datetime.fromtimestamp(timestamp, tz=None)
:
这通常限制在 1970 年到 2038 年之间。
负 Unix 时间戳表示时间 之前 1970 年 1 月 1 日。您可以获得时间戳 0,然后添加一个 python timedelta
对象时间。现在计算在 python 中完成,移除了该限制。
>>> import datetime
>>> datetime.datetime.fromtimestamp(0) + datetime.timedelta(seconds=-266086800)
datetime.datetime(1961, 7, 27, 0, 0)
我如何将 UnixTimeStamp 像 -266086800 (with Minus) 转换成 日期
>>> datetime.fromtimestamp('-266086800').strftime("%A, %B %d, %Y %I:%M:%S")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: an integer is required (got type str)
更新
修复时间戳作为字符串传递的错误后
datetime.datetime.fromtimestamp(-266086800)
出现另一个错误(Windows)
OSError: [Errno 22] Invalid argument
将参数从字符串更改为整数后,是否成功取决于平台。 fromtimestamp
使用 C localtime
函数并来自 classmethod datetime.fromtimestamp(timestamp, tz=None)
:
这通常限制在 1970 年到 2038 年之间。
负 Unix 时间戳表示时间 之前 1970 年 1 月 1 日。您可以获得时间戳 0,然后添加一个 python timedelta
对象时间。现在计算在 python 中完成,移除了该限制。
>>> import datetime
>>> datetime.datetime.fromtimestamp(0) + datetime.timedelta(seconds=-266086800)
datetime.datetime(1961, 7, 27, 0, 0)