从忽略DST的时区获取Python中的时区偏移量

从忽略DST的时区获取Python中的时区偏移量,python,datetime,timezone,Python,Datetime,Timezone,在python中,从时区获取UTC偏移量的正确方法是什么? 我需要一个函数来发送pytz时区并获取忽略夏令时的时区偏移量 import pytz tz = pytz.timezone('Europe/Madrid') getOffset(tz) #datetime.timedelta(0, 3600) pytz时区对象遵循datetime模块中定义的tzinfo。因此,您可以使用它们的.utcoffset()和.dst()方法: timestamp = datetime(2009, 1, 1)

在python中,从时区获取UTC偏移量的正确方法是什么? 我需要一个函数来发送pytz时区并获取忽略夏令时的时区偏移量

import pytz
tz = pytz.timezone('Europe/Madrid')
getOffset(tz) #datetime.timedelta(0, 3600)

pytz
时区对象遵循
datetime
模块中定义的
tzinfo
。因此,您可以使用它们的
.utcoffset()
.dst()
方法:

timestamp = datetime(2009, 1, 1)  # any unambiguous timestamp will work here

def getOffset(tz):
    return tz.utcoffset(timestamp) - tz.dst(timestamp)

pytz
时区对象遵循
datetime
模块中定义的
tzinfo
。因此,您可以使用它们的
.utcoffset()
.dst()
方法:

timestamp = datetime(2009, 1, 1)  # any unambiguous timestamp will work here

def getOffset(tz):
    return tz.utcoffset(timestamp) - tz.dst(timestamp)

回答得很好。要注意为什么<代码>时间戳仍然是必需的,考虑到许多时区已经改变了它们的标准时间。真的很有用。谢谢回答得很好。要注意为什么<代码>时间戳仍然是必需的,考虑到许多时区已经改变了它们的标准时间。真的很有用。谢谢