在给定UTC时间戳和UTC偏移量的情况下,是否可以在Python中获取时区?

在给定UTC时间戳和UTC偏移量的情况下,是否可以在Python中获取时区?,python,timezone,utc,dst,pytz,Python,Timezone,Utc,Dst,Pytz,我有UTC偏移量和UTC时间的数据。考虑到这一点,在Python中是否可以获得用户的本地时区(主要是为了确定它是否是DST等,可能使用pytz),类似于PHPtimezone\u name\u from_abbr中的函数 例如: 如果我的大纪元时间是1238720309, 我可以通过以下方式获得UTC时间: >>> d = datetime.utcfromtimestamp(1238720309) >>> print d + dt.timedelta(0,-2

我有UTC偏移量和UTC时间的数据。考虑到这一点,在Python中是否可以获得用户的本地时区(主要是为了确定它是否是DST等,可能使用pytz),类似于PHP
timezone\u name\u from_abbr
中的函数

例如:

如果我的大纪元时间是1238720309, 我可以通过以下方式获得UTC时间:

>>> d = datetime.utcfromtimestamp(1238720309)
>>> print d + dt.timedelta(0,-28800) #offset for pacific I think
2009-04-02 17:04:41.712143 
这是正确的,只是现在是PDT,所以应该是:

2009-04-02 18:04:41.712413

我需要得到pytz中使用的时区,以确定它是否是夏令时,我认为?

因为一般来说,对于给定的时区偏移量,有多个可能的时区,通常的答案是“不,不是没有更多信息”。更多信息通常是时间适用的位置-哪个国家、州或城市。

否。

否。时区太复杂,距离UTC X小时的时区太多

例如,UTC的-5可以是加拿大、纽约、古巴、牙买加、厄瓜多尔等


赤道地区可能不使用DST,因为他们一天大约12小时。南美洲国家如果使用某种形式的DST,可能与北美国家的时间表相反,因为它们的夏季/冬季(即短日/长日)时间表也相反。

时区边界或多或少是随机的。从技术上讲,他们在美国是一个县接一个县的,不必遵循州边界。此外,DST因地区而异——特别是在亚利桑那州和印第安纳州,其他州也可能有复杂的规则。相关: