Python:如何获得给TIMEZONE的UTC时间

时间:2011-06-29 23:24:32

标签: python time utc

我在美国,我希望获得一段代码的UTC时间(不受夏令时影响):

localtime = strftime("%m%d%y%H%M", gmtime())

现在,这段代码让我有时间在英格兰的格林威治。我知道我的时间偏移为-8(GMT -8)。如何将UTC时间转换为特定时区? (使用Python库,不是将小时转换为整数, - 8,而不是将其转换回来)

谢谢。

3 个答案:

答案 0 :(得分:5)

尝试使用datetime模块:

datetime.datetime.utcnow() + datetime.timedelta(hours=-8)
顺便说一句,UTC没有时区,它是通用协调时间,它在任何地方都是一样的。

答案 1 :(得分:3)

只需使用localtime()而不是gmtime()函数:

localtime = time.strftime("%m%d%y%H%M", time.localtime())

从python时间模块: “与gmtime()类似但转换为本地时间。如果未提供secs或None,则使用time()返回的当前时间。当DST应用于给定时间时,dst标志设置为1.”

查看DST是否适用:

time.daylight

答案 2 :(得分:1)

  

需要在任何详细程度支持时区取决于应用程序。世界各地的时间调整规则更具政治性而非理性,没有适合每种应用的标准。

为此目的,有一个有用的第三方模块:http://pytz.sourceforge.net/