2

Sun May 27 13:02:04 +0200 2012Python3 を使用して、UTC のタプルなどの時間文字列を解析するにはどうすればよいですか? 私が得ることができる最も近いtime.strptime(str, '%a %b %d %H:%M:%S %z %Y')ものは ですが、オフセットは解析されていますが無視されているようです。上記の例は次のように解析されます。

time.struct_time(tm_year=2012, tm_mon=5, tm_mday=27, tm_hour=13, tm_min=1, tm_sec=35, tm_wday=6, tm_yday=148, tm_isdst=-1)

しかし、私は期待していtm_hour=11ました。

関連:文字列のタイムスタンプ (タイムゾーン オフセット付き) を現地時間に変換します。. ? pythonPython での時間文字列の解析。両方への回答はdateutilの使用を示唆していますが、可能であれば標準ライブラリを使用することをお勧めします。

4

1 に答える 1

2

tm_hour=11 は正しくありません。オフセットに関係なく、タイムスタンプの時刻は 13:02:04 です。

あなたがしたいことは、そのタイムスタンプを GMT の時刻に変換することです。これは、標準ライブラリでは行われません。したがって、自分でオフセットを抽出し (これは些細なことです)、それを時間から差し引く必要があります。

これには datetime ライブラリを使用することもお勧めします。日付/時刻の操作ははるかに簡単です。オフセットから timedelta オブジェクトを簡単に作成し、それを datetime オブジェクトから差し引くことができます。

于 2012-05-27T19:35:58.133 に答える