Skip to main content
 首页 » 编程设计

python之将 datetime.time() 转换为与 time.time() 相同的格式

2025年05月04日12unruledboy

我正在使用以下方法获取 utc 日期时间:

import datetime 
import time 
from pytz import timezone 
now_utc = datetime.datetime.now(timezone('UTC')) 
now = time.time() 
print now_utc.time(), now 
>> 04:51:39.337515 1332823899.34 

我需要将 now_utc.time() 的格式转换为看起来像 time.time() 的输出。

我该怎么做?或者,如何在 utc 中获取 time.time()?

请您参考如下方法:

时间.mktime(now_utc.timetuple())

更新答案,因为它是完全错误的,但我犯的错误可能对其他人有用。

time.mktime 不保留时区,使用元组作为本地时间,因此:

time.mktime(datetime.now().timetuple()) 

宁愿工作。

但是,简而言之,time.time(),如 spec 中明确说明的那样, 返回一个 UTC 时间戳,因此只需使用它即可。

(此外,您不需要 pytz 来获取 UTC 日期时间,datetime.utcnow() 也可以)