2

Google App Engine ではnowTime = datetime.datetime.now()、システム時刻を取得していました。しかし、コンピューターのシステム時刻とは異なることがわかりました。たとえば、nowTimeは です2012-12-20 14:44:30.910192が、私のコンピューターのシステム時間は2012-12-20 22:44です。8時間の差があります。時間帯のせいですか?Google App Engine SDK はどこから時間を取得しますか? ありがとう。

4

1 に答える 1

5

http://timezones.appspot.com/を参照してください- GAE タイム ゾーンは常に になりますUTC。これが 8 時間の違いが見られる理由です。サイトごと:

ランタイムの TZ 環境変数は UTC に設定されており、変更できません。time.time() や datetime.datetime.now() などによって返されるタイムスタンプは、常に UTC になります。同様に、データストアの日時プロパティは常に UTC として格納され、返されます。

astimezone() メソッドを使用して、メモリ内の datetime のタイム ゾーンを変更できます。datetime の tzinfo メンバーが設定されていない場合は、最初に replace() メソッドを使用して UTC tzinfo に設定する必要があります。

また、特別な処理を行う方法の例とともに、ここに文書化されていることも確認できます。

于 2012-12-20T15:01:30.993 に答える