【发布时间】:2021-11-10 16:12:44
【问题描述】:
我有 sqlite 日志文件,其中日期在时间戳中。
通过下面的函数用JS转换得到正确的结果
var unixTsToDate = function (UNIX_Timestamp){
var date = new Date(UNIX_Timestamp / 1000);
return date;
};
unixTsToDate (1615370972685000) = Wed Mar 10 2021 11:09:32 GMT+0100
现在我正在尝试对 Python 3.9 进行同样的操作,但它因错误而中止
import datetime
print(datetime.datetime.utcfromtimestamp(1615370972685000))
result:
print(datetime.datetime.utcfromtimestamp(1615370972685000))
OSError: [Errno 22] Invalid argument
这个数字对于函数来说似乎太大了。尝试使用 /1000(在互联网上发现可能是不同的时间戳,有毫秒和没有),没有结果
在这种情况下,Python 有什么解决方案?
【问题讨论】:
-
Python 使用秒,而进入 JS 函数的是毫秒,因此在 Python 中也除以 1000。关于在 Python 中将 Unix 时间转换为 UTC,另请注意 this。
标签: javascript python datetime timestamp