我正在尝试自动获取本地时区偏移,但遇到了问题。我试过:
print time.timezone/3600
这将获得(当前错误的)偏移量,因为它不会自动调整夏令时和非夏令时。
我也试过:
now_utc = pytz.utc.localize(datetime.datetime.now())
now_mst = now_utc.astimezone(pytz.timezone('US/Mountain'))
这将获得正确的偏移值,但我想自动设置“US/Mountain”部分,这样就不必手动输入任何内容来获取偏移。
是否有方法获得使用DST和非DST自动调整的正确偏移?
我将在不同地理位置的多个服务器上运行这个脚本,如果可以的话,我想自动获取tz偏移量。
您可以为此使用dateutil模块。要立即获取本地时区:
我现在是东部夏令时间。在夏令时切换回EST后,您可以看到它在未来会变回EST:
如果需要从UTC的偏移量,可以使用UTC offset函数。它返回时间增量:
在这种情况下,由于我是UTC-4,它返回-1天+20小时。如果您需要,您可以将其转换为小时:
相关问题 更多 >
编程相关推荐