Python 在pytz中提取时区偏移的更优雅的方法是什么?

Python 在pytz中提取时区偏移的更优雅的方法是什么?,python,timezone,pytz,Python,Timezone,Pytz,我有一些代码使用datetime、pytz和re来确定给定时区的UTC偏移量,以datetime.timedelta对象的形式: 看起来应该有一种更优雅、更高效的方法来实现这一点,因为pytz.timezone.localize必须知道自己相对于UTC的偏移量。将偏移量值提取为字符串,然后使用正则表达式对字符串进行基本的sscanf,这似乎是浪费 我们如何使这段代码更好?如果您查看,您将看到一个名为utcoffset的方法。这将直接为您提供偏移量 delta = tzone.utcoffset(

我有一些代码使用datetime、pytz和re来确定给定时区的UTC偏移量,以datetime.timedelta对象的形式:

看起来应该有一种更优雅、更高效的方法来实现这一点,因为pytz.timezone.localize必须知道自己相对于UTC的偏移量。将偏移量值提取为字符串,然后使用正则表达式对字符串进行基本的sscanf,这似乎是浪费

我们如何使这段代码更好?

如果您查看,您将看到一个名为utcoffset的方法。这将直接为您提供偏移量

delta = tzone.utcoffset(that_day)
return delta
编辑:不需要在datetime上调用localize,pytz对象本身作为utcoffset的一部分来执行。它希望传递一个简单的日期时间

delta = tzone.utcoffset(that_day)
return delta