平台localtime() gmtime()函数的时间戳超出范围

平台localtime() gmtime()函数的时间戳超出范围,第1张

平台localtime()/ gmtime()函数的时间戳超出范围

对于许多值,例如过去或将来的距离太远,仅提供时间戳记

fromtimestamp()
会抱怨超出范围的错误。但是,您可以使用
timedelta()
纪元中的相对日期来计算日期。

>>> from datetime import datetime, timedelta>>> date = datetime(1970, 1, 1) + timedelta(seconds=-216345600)>>> datedatetime.datetime(1963, 2, 23, 0, 0)>>> date.strftime('%a, %d %b %Y %H:%M:%S GMT')'Sat, 23 Feb 1963 00:00:00 GMT'

但是,请注意,您不能使用它来回到恐龙时代,因为它

datetime()
仍然具有可以支持的最小值和最大值。

>>> datetime(1970, 1, 1) + timedelta(seconds=-62135596800)datetime.datetime(1, 1, 1, 0, 0)>>> datetime(1970, 1, 1) + timedelta(seconds=253402300799)datetime.datetime(9999, 12, 31, 23, 59, 59)>>> datetime(1970, 1, 1) + timedelta(seconds=253402300800)Traceback (most recent call last):  File "<pyshell#157>", line 1, in <module>    datetime(1970, 1, 1) + timedelta(seconds=253402300800)OverflowError: date value out of range

timedelta()
也有其极限,但以纪元为参考点,我们甚至没有达到极限。

>>> timedelta(microseconds=1000000000*86400*10000-1)datetime.timedelta(9999999, 86399, 999999)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存