如何调整从gmtime()
返回的时间?
from time import gmtime, strftime, localtime, strptime
print(strftime("%Y-%m-%d %H:%M:%S", gmtime()))
2017-02-09 18:54:31
但我想要的时间应该是:
2017-02-09 10:54:31
这需要减去8小时。我该怎么做?
我试过了:
a = gmtime()
a.tm_hour = a.tm_hour-8
TypeErrorTraceback (most recent call last)
<ipython-input-9-65a0fe0238c0> in <module>()
1 a = gmtime()
----> 2 a.tm_hour = a.tm_hour-8
TypeError: readonly attribute
我也尝试过:
print(gmtime().tm_year, "/", gmtime().tm_mon, gmtime().tm_mday, gmtime().tm_hour-8,":",gmtime().tm_min,":",gmtime().tm_sec)
2017 / 2 8 9 : 56 : 51
但格式显然是关闭的,可能是一种“hacky”/错误的方式。
答案 0 :(得分:0)
您可以使用datetime
模块执行此操作:
from datetime import datetime, timedelta
from time import strftime
utc_minus_8hr = datetime.utcnow() - timedelta(hours=8)
utc_minus_8hr.strftime('%Y-%m-%d %H:%M:%S')
输出:
'2017-02-09 11:31:30'