我需要创建一个GMT偏移变量,它现在是7:XX AM

时间:2011-05-28 03:39:34

标签: python time timezone

我一直在研究这个问题,但还没有看到答案。基本上,我需要根据GMT偏移量将一个条件添加到脚本中。 GMT偏移需要在脚本运行时的世界任何地方都是上午7点。

换句话说,如果它在纽约上午7点,我需要编写一个返回'-4'的python脚本。

有什么想法吗?

更新: 像这样的脚本大部分时间都可以工作:

7 - time.gmtime().tm_hour

但是当它在格林威治标准时间下午11点(23)时,回报是-15,并且-15没有GMT偏移(只有-12)。

2 个答案:

答案 0 :(得分:1)

如果是纽约的07:00,那么格林威治标准时间11:00。 7 - 11 = -4。

如果是洛杉矶的07:00,那么格林尼治标准时间是14:00。 7 - 14 = -7。

所以在GMT中取当前时间,将其四舍五入到您选择的小时,然后从7减去。

[更新]

啊,是的,没有-15 ......但是这一切都适用于模式24.所以请7-time.gmtime().tm_hour,如果它小于-12,请加24以获得正确的答案。

[抱歉,我实际上并不了解Python: - )]

答案 1 :(得分:1)

def OfsToHour(targetHour = 7):
    import datetime
    t = datetime.datetime.utcnow() #or your favored UTC call
    return (((targetHour - t.hour) + 12) % 24) - 12