保存时间字段时,我是使用 datetime.datetime.utcnow() 保存的时间,也就是 UTC 标准时间。现在我要取出这个时间,比如在天朝就要+8个小时。

那么,这个时间是直接加8个小时好呢还是说有什么更科学的方法将时间转换成当前东八区的时间?

 

from datetime import datetime,timezone,timedelta
dt = datetime.utcnow()
print(dt)
dt = dt.replace(tzinfo=timezone.utc)
print(dt)
tzutc_8 = timezone(timedelta(hours=8))
local_dt = dt.astimezone(tzutc_8)
print(local_dt)

output
2016-08-15 08:51:36.980119
2016-08-15 08:51:36.980119+00:00
2016-08-15 16:51:36.980119+08:00

 

现在的时间减去2分钟31秒后得出的时间: 

>>>(datetime.datetime.now() - datetime.timedelta(minutes=2,seconds=31)).strftime("%H:%M:%S")
15:21:58
>>>
多加一天:

>>> print (datetime.datetime.now()+datetime.timedelta(days=1)).strftime("%Y-%m-%
d %H:%M:%S")
2019-05-16 15:12:42
>>>
多加1小时:

>>> print (datetime.datetime.now()+datetime.timedelta(hours=1)).strftime("%Y-%m-
%d %H:%M:%S")
2019-05-15 16:10:43
>>>
多加1分钟:

>>> print (datetime.datetime.now()+datetime.timedelta(minutes=1)).strftime("%Y-%
m-%d %H:%M:%S")
2019-05-15 15:13:56


原文链接:https://blog.csdn.net/z564359805/java/article/details/90237499