python日期时间现在没有夏令时
我在tzinfo文档中迷失了方向 我想为我的位置创建一个datetime对象,该对象不包括夏令时调整 目前,我正在进行丑陋的黑客攻击:python日期时间现在没有夏令时,python,datetime,Python,Datetime,我在tzinfo文档中迷失了方向 我想为我的位置创建一个datetime对象,该对象不包括夏令时调整 目前,我正在进行丑陋的黑客攻击: import time import datetime now=datetime.datetime.now() if time.localtime().tm_isdst==1: now=now+datetime.timedelta(hours=-1) 正确的方法是什么?如果您真的想通过消除DST的影响来创建“假”时间,您当前的解决方案将起作用 但是,处
import time
import datetime
now=datetime.datetime.now()
if time.localtime().tm_isdst==1:
now=now+datetime.timedelta(hours=-1)
正确的方法是什么?如果您真的想通过消除DST的影响来创建“假”时间,您当前的解决方案将起作用 但是,处理日期的最佳实践是在内部将所有日期表示为UTC,并且只处理用户交互的时区差异。这样你就不必关心所有杂乱无章的细节
为您的程序添加所有时区的支持,请考虑使用.
您的解决方案对我来说似乎是合理的,也很清楚。我不同意——目前我有一个DeaTimeObjt对象,它被归类为夏令时包含,但是一小时前,而不是实际上现在。如果我开始与其他datetime对象进行比较,这可能会造成混乱。我正在寻找一种方法来实例化一个datetime对象,它的tzinfo中没有夏令时,因此不需要神奇的数字。+1推荐使用UTC-这确实是正确的方法。UTC是明确的,这是处理时间的一个基本属性。我不想要虚假的时间,否则我不会问的-谢谢PyTZrecommendation@meepmeep:也许你不再想要假时间了,因为人们建议你改用UTC时间…;)