如何在Python中使用strftime格式化GMT时间
我想在当前的格林威治标准时间(GMTime)上加2个小时。
gmt_time = time.gmtime()
gmt_time_to_dt = datetime.datetime.fromtimestamp(mktime(gmt_time))
print(gmt_time_to_dt)
gmt_plus = gmt_time_to_dt + datetime.timedelta(minutes = 120)
print(gmt_plus)
这段代码可以做到这一点,但我需要它以这种格式呈现:
'%Y-%m-%dT%H:%M:%SZ'
该怎么做呢?
2 个回答
2
首先导入需要的内容:
import datetime
import time
from time import mktime
import pytz
试试这个:
gmt_time = time.gmtime()
gmt_time_to_dt = datetime.datetime.fromtimestamp(mktime(gmt_time))
print(gmt_time_to_dt)
gmt_plus = gmt_time_to_dt + datetime.timedelta(minutes = 120)
print(gmt_plus.isoformat())
输出结果是:
2014-08-21T05:57:06
不过我觉得你可能是想这样:
gmt_time = time.gmtime()
gmt_time_to_dt = datetime.datetime.fromtimestamp(mktime(gmt_time),
tz=pytz.timezone('GMT'))
gmt_plus = gmt_time_to_dt + datetime.timedelta(minutes = 120)
print(gmt_plus.isoformat())
输出结果是:
2014-08-21T10:09:56+00:00
如果你真的想指定格式,我觉得你写错了:
gmt_plus.strftime('%Y-%m-%dT%H:%M:%S%Z')
输出结果是:
'2014-08-21T10:09:56GMT'
3
你的意思是:
import datetime
datetime.datetime.strftime(gmt_plus, '%Y-%m-%dT%H:%M:%SZ')
还是:
gmt_plus.strftime('%Y-%m-%dT%H:%M:%SZ')