python-linux时间戳到日期时间和反转

2024-04-24 16:06:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道如何将datetime Wed Apr 24 19:25:06 2013 GMT转换为Linux时间戳1366831506000(13位数字),并使用python进行反向转换。

例如:

Wed Apr 24 19:25:06 2013 GMT

1366831506000

1366831506000

Wed Apr 24 19:25:06 2013 GMT

Tags: datetimelinux时间数字aprgmtwed
1条回答
网友
1楼 · 发布于 2024-04-24 16:06:54

从字符串到时间戳,使用^{},将生成的struct_time元组传递给^{};时间戳使用毫秒,而不是UNIX秒作为浮点值,因此需要乘以1000:

import time

datestr = "Wed Apr 24 19:25:06 2013 GMT"
time.mktime(time.strptime(datestr, "%a %b %d %H:%M:%S %Y %Z")) * 1000

在另一个方向上,使用^{},传入由^{}创建的struct_time元组,首先将时间戳除以1000:

timestamp = 1366831506000
time.strftime("%a %d %b %Y %H:%M:%S GMT", time.gmtime(timestamp / 1000.0))

演示:

>>> datestr = "Wed Apr 24 19:25:06 2013 GMT"
>>> time.mktime(time.strptime(datestr, "%a %b %d %H:%M:%S %Y %Z")) * 1000
1366827906000.0
>>> timestamp = 1366831506000
>>> time.strftime("%a %d %b %Y %H:%M:%S GMT", time.gmtime(timestamp / 1000.0))
'Wed 24 Apr 2013 19:25:06 GMT'

相关问题 更多 >