Google App Engine SDK:系统时间与计算机时间不同

时间:2012-12-20 14:46:40

标签: python google-app-engine datetime

在Google App Engine中,我使用nowTime = datetime.datetime.now()来获取系统时间。但是,我发现它与计算机系统时间不同。例如,nowTime2012-12-20 14:44:30.910192,但我的计算机系统时间为2012-12-20 22:44。有八个小时的差异。是因为时区吗? Google App Engine SDK从哪里获得时间?感谢。

1 个答案:

答案 0 :(得分:5)

请参阅http://timezones.appspot.com/ - GAE时区将始终位于UTC,这就是您看到8小时差异的原因。根据网站:

  

运行时的TZ环境变量设置为UTC,但不能   改变。例如,返回的时间戳time.time()和   datetime.datetime.now()将始终为UTC。同样,日期时间   数据存储区中的属性将始终存储并以UTC格式返回。

     

您可以使用更改内存中日期时间的时区   astimezone()方法。如果没有设置datetime的tzinfo成员,那么你就可以了   首先需要使用replace()方法将其设置为UTC tzinfo。

您还可以看到它记录在here,并举例说明如何进行特殊处理。