我对前一段时间写的一些代码感到震惊。为了不进入很多细节,我有一个运行一些对象的方法,它有一个日期参数。如果date参数等于今天的日期,则继续。
我已经在我的本地机器上设置了这个以进行测试,并且今天有695个对象都具有相同的日期,但是当动作运行时没有任何反应,所以我调试它以找到我的表达式date.today()
返回datetime.date(2014, 3, 19)
。
这是不正确的,因为来自date
命令的计算机日期为Tue Mar 18 20:56:09 AST 2014
。
我使用了from datetime import date
。这是我有过的一个比较神秘的错误。有人可以在这里分享经验吗?非常感谢。
答案 0 :(得分:1)
该方法不是时区感知的,并且没有与平台无关的方法。通常做的是incorporate something like pytz并将.today()称为:
datetime.utcnow().replace(tzinfo = pytz.utc).strftime('%Y-%m-%d')