- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我尝试:
ts = -216345600000
datetime.datetime.fromtimestamp(ts/1000)
ValueError:时间戳超出平台 localtime()/gmtime() 函数的范围
我检查 epochconverter 值:-216345600 返回 GMT:1963 年 2 月 23 日星期六 00:00:00 GMT
如何得到正确的结果?
最佳答案
对于许多值,比如太远的过去或 future ,只需将时间戳提供给 fromtimestamp()
就会报出超出范围的错误。但是,您可以使用相对于纪元的 timedelta()
来计算日期。
>>> from datetime import datetime, timedelta
>>> date = datetime(1970, 1, 1) + timedelta(seconds=-216345600)
>>> date
datetime.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)
关于python - 时间戳超出平台 localtime()/gmtime() 函数的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36179914/
给定一个带有多个 date_time 戳的字符串,我想 提取第一个戳及其前面的文本 候选字符串可以有一个或多个时间戳 后续的 date_time 戳记将被 sep="-" 隔开 后续date_time
是否可以合并从相机拍摄的文本和照片?我想在照片上标记日期和时间,但我在 Google 上找不到任何内容。 最佳答案 使用下面的代码来实现你所需要的。 Bitmap src = Bitm
有没有办法通过 Graph API 戳另一个用户?基于this post ,并使用 Graph Explorer ,我发布到“/USERID/pokes”,我已经授予它(Graph API 应用程序和
我有两个向左浮动的元素。一个是 body 的第一个 child ,另一个是容器的第一个 child ,容器是 body 的第二个 child 。 ...
我是一名优秀的程序员,十分优秀!