在Python 2中,如何将10位时间戳转换为13位时间戳?
输入:
today = datetime.now()
yesterday = datetime.now() - timedelta(days=1)
today_unixtime = int((mod_time.mktime(today.timetuple())+today.microsecond/1000000.0))
dt_object = datetime.fromtimestamp(today_unixtime)
print(today)
print("timestamp =", today_unixtime)
print("date =", dt_object)
输出:
2020-01-17 11:31:40.450943
('timestamp =', 1579240900)
('date =', datetime.datetime(2020, 1, 17, 11, 31, 40))
我得到正确的日期和时间。但是当我在Chrome浏览器控制台中签入时,
new Date(1579240900)
给我50年的约会日期。当我在Python中转换相同的时间戳时:
输入:
dt_object = datetime.fromtimestamp(today_unixtime)
输出:
Mon Jan 19 1970 12:10:40 GMT+0530 (India Standard Time)
在2020年,时间戳记必须始终为13位数字。为什么它会变成10位数字?如何在Python 2中转换为13位数字?
我只需要13位数字,我的API就是13位数字。
这个问题也问了python convert 10 digits datetimestamp to 13 digit GMT timestamp,但没有答案。
答案 0 :(得分:0)
我正在使用python 2.7
import time
import datetime
import time as mod_time
from datetime import datetime
from datetime import datetime, timedelta
from datetime import date, timedelta
today = datetime.now()
yesterday = datetime.now() - timedelta(days=1)
today_time = int((mod_time.mktime(today.timetuple())))
yesterday_time = int((mod_time.mktime(yesterday.timetuple())))
today_unixtime = (today_time*1000)
yesterday_unixtime = (yesterday_time*1000)
print("today timestamp =", today_unixtime)
print("yesterday timestamp =", yesterday_unixtime)
输出
('today timestamp =', 1579243097000)
('yesterday timestamp =', 1579156697000)
您可以从crome浏览器控制台检查当前时间戳。
new Date(1579243097000)
它将为您提供当前日期和时间。