Python:只需打印datetime.now(),包括正确的时区

时间:2014-10-04 18:36:42

标签: python datetime timezone date-formatting

如何以包含正确时区指示的方式打印当前日期/时间?我看过datetime format mini-language here,所以我只是尝试过:

>>> '{:%Y-%m-%d %H:%M:%S %z}'.format(datetime.now())
'2014-10-04 20:33:07 '

但是你可以看到时区没有打印出来。我的区域设置为it-IT,小时/分钟是正确的,因此我希望%z能够打印+0200

1 个答案:

答案 0 :(得分:3)

您需要使用下面的datetime.astimezone(tz) Refer; -

from datetime import datetime
import pytz
from tzlocal import get_localzone # $ pip install tzlocal

utc_dt = datetime(2009, 7, 10, 18, 44, 59, 193982, tzinfo=pytz.utc)
print(utc_dt.astimezone(get_localzone())) # print local time
# -> 2009-07-10 14:44:59.193982-04:00