【发布时间】:2020-05-04 02:25:00
【问题描述】:
在 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,但没有答案。
【问题讨论】:
-
乘以 1,000? JavaScript 在 milli 秒内处理时间戳。
-
事实上,your answer on the linked question 显示乘以 1,000,所以我对你在这里问什么感到困惑。
-
@jonrsharpe Stackoverflow 允许回答您自己的问题,如果您认为它与其他用户相关。所以OP并没有真正的问题,只是想分享如何解决其他人可能遇到的问题
-
@SembeiNorimaki self answered questions: 1. 必须仍然满足所有帖子的质量要求;和 2. 通常一小时后 后没有发布答案。此外,这里的 OP 显然已经能够找到上一个问题,因此不需要路标,并明确表示 “但没有答案”,尽管在那里发布了相同的内容。也许这是他们试图做的,但他们以一种莫名其妙的方式去做了它(它仍然只是一个微不足道的乘法,更不用说stackoverflow.com/q/5998245/3001761的欺骗了)。跨度>
标签: python python-2.7 python-datetime