Python将UTC时间转化为Local时间

最近在项目中遇到一个问题:数据库中存放的时间为UTC时间,但是现在要求都出来显示的时间为本地时间,由于自己之前很少接触Python,对Python中的datetime操作很不熟悉,在网上查阅了相关资料后终于成功解决了这个问题,方法如下:

from dateutil import tz
from datetime import datetime

# UTC Zone
from_zone = tz.gettz('UTC')
# China Zone
to_zone = tz.gettz('CST')

utc = datetime.utcnow()

# Tell the datetime object that it's in UTC time zone
utc = utc.replace(tzinfo=from_zone)

# Convert time zone
local = utc.astimezone(to_zone)
print datetime.strftime(local, "%Y-%m-%d %H:%M:%S")

对于如何获得当地时区的代码,可以参考下面的代码:

from datetime import *
from dateutil.tz import *

print datetime.now(tzlocal()).tzname()

OVER!

你可能感兴趣的:(Python/Django,python,import,object,数据库)