1. 程式人生 > >Python將UTC時間轉化為Local時間

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!