0
从python的时区获取UTC偏移的正确方法是什么? 我需要一个函数来发送一个pytz时区并获取时区偏移量,而忽略夏令时。从时区忽略DST获取Python中的时区偏移
import pytz
tz = pytz.timezone('Europe/Madrid')
getOffset(tz) #datetime.timedelta(0, 3600)
从python的时区获取UTC偏移的正确方法是什么? 我需要一个函数来发送一个pytz时区并获取时区偏移量,而忽略夏令时。从时区忽略DST获取Python中的时区偏移
import pytz
tz = pytz.timezone('Europe/Madrid')
getOffset(tz) #datetime.timedelta(0, 3600)
pytz
时区的对象服从tzinfo
API specification的datetime
模块中定义。因此,你可以使用他们的.utcoffset()
和.dst()
方法:
timestamp = datetime(2009, 1, 1) # any unambiguous timestamp will work here
def getOffset(tz):
return tz.utcoffset(timestamp) - tz.dst(timestamp)
伟大的答案。要注意为什么'timestamp'仍然是必需的,请考虑许多时区多年来已经改变了他们的*标准*时间。 –
真的很有用。谢谢! –