我正在努力争取在EDT时区获得当前时间。
print datetime.time(datetime.now()).strftime("%H%M%S")
datetime.now([tz])有一个可选的tz参数,但它必须是datetime.tzinfo类型...我无法弄清楚如何为东部时区定义一个tzinfo对象...看起来它应该非常简单,但我无法在不导入额外库的情况下解决这个问题。
答案 0 :(得分:20)
我对EDT时区并不十分反对,但这个例子应该符合您的目的。
import datetime
datetime.datetime.now必须传递时区信息,该信息应为datetime.tzinfo类型。这是一个用一些必需的函数实现它的类。我在这里没有提供日间节电细节,因为这是一个例子。
class EST(datetime.tzinfo):
def utcoffset(self, dt):
return datetime.timedelta(hours=-5)
def dst(self, dt):
return datetime.timedelta(0)
现在您可以使用它来获取时区正确性的信息:
print datetime.datetime.now(EST())
输出:
2010-11-01 13:44:20.231259-05:00
答案 1 :(得分:8)