如何在python中为DateTime模块设置时区到东部?

Chr*_*ris 2 python datetime date

我正在使用datetime模块来生成当前日期.但是,当我在晚上7点之后运行时,当前日期变为明天的日期.

我不确定如何为以下模块设置时区

from datetime import *
print date.today()
Run Code Online (Sandbox Code Playgroud)

我已经阅读了文档,但还没有找到如何设置它.

Lou*_*iro 7

您的日期是"天真"的日期时间,它没有时区(tz=None).然后,您必须通过设置时区来本地化此日期时间.使用pytz模块来做到这一点.

这是一个例子:

from datetime import datetime
from pytz import timezone
# define date format
fmt = '%Y-%m-%d %H:%M:%S %Z%z'
# define eastern timezone
eastern = timezone('US/Eastern')
# naive datetime
naive_dt = datetime.now()
# localized datetime
loc_dt = datetime.now(eastern)
print(naive_dt.strftime(fmt))
# 2015-12-31 19:21:00 
print(loc_dt.strftime(fmt))
# 2015-12-31 19:21:00 EST-0500
Run Code Online (Sandbox Code Playgroud)

阅读pytz文档以获取更多信息