我有一个约会,我需要让它知道时区。
local_tz = timezone('Asia/Tokyo')
start_date = '2012-09-27'
start_date = datetime.strptime(start_date, "%Y-%m-%d")
start_date = start_date.astimezone(local_tz)
now_utc = datetime.now(timezone('UTC'))
local_now = now_utc.astimezone(local_tz)
我需要确定这是否属实:
print start_date>local_now
但我收到这个错误。
start_date = start_date.astimezone(local_tz)
ValueError: astimezone() cannot be applied to a naive datetime
我将 utc 转换为 tokyo 没有任何问题。我需要在东京做好开始日期时区感知广告。
Thanks
For pytz
时区,使用他们的.localize()
化幼稚的方法datetime
对象与时区合二为一:
start_date = local_tz.localize(start_date)
对于没有 DST 转换的时区,.replace() method http://docs.python.org/library/datetime.html#datetime.datetime.replace将时区附加到天真的datetime
对象通常也应该工作:
start_date = start_date.replace(tzinfo=local_tz)
See the 本地时间和日期算术 http://pytz.sourceforge.net/#localized-times-and-date-arithmeticpytz 文档了解更多详细信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)