【发布时间】:2013-03-23 07:15:35
【问题描述】:
运行 Windows XP,在 Python 应用程序中,我得到当前时间:
import datetime
now = datetime.datetime.now()
时间与系统时钟显示的时间一致。然而,现在,应用程序仍在运行,我转到 Windows 时钟并选择时区并更改它。现在我用上面的方法再次得到时间,这一次是不正确的——它给了我时间,就好像我没有改变时区一样。
但如果我关闭应用程序并重新启动它然后获取时间,那么它与时钟匹配。就好像它“卡在”应用程序首先加载的任何时区一样。
有趣的是,这只发生在时区更改时;如果我只是更改时间(而不是时区),则更改在应用程序中正确更改。
为什么会这样,我可以做些什么来防止它?
【问题讨论】:
-
Microsoft 从未认真尝试过以有用的方式处理时区。如果这对您很重要,我建议您使用不同的操作系统。
-
@gnibbler 谢谢,但不可能;目标是制作在 Windows(以及其他平台)上运行的应用程序。