3

pytz.astimezoneUTCとの間のすべての時間変換にこのメソッドを使用するように求められます。ただし、1つの特殊なケースdatetime.fromtimestampでは、Pythonライブラリのdatetimeメソッドを使用できるはずです。

ここで機能するようです:

>>> import datetime
>>> import pytz
>>> ambigtime = 1352017800  # http://www.wolframalpha.com/input/?i=1352017800+unix+time+in+Los+Angeles
>>> amla = pytz.timezone('America/Los_Angeles')
>>> datetime.datetime.fromtimestamp(ambigtime, tz=amla)
datetime.datetime(2012, 11, 4, 1, 30, tzinfo=<DstTzInfo 'America/Los_Angeles' PDT-1 day, 17:00:00 DST>)
>>> datetime.datetime.fromtimestamp(ambigtime + 3600, tz=amla)
datetime.datetime(2012, 11, 4, 1, 30, tzinfo=<DstTzInfo 'America/Los_Angeles' PST-1 day, 16:00:00 STD>)

タイムゾーンdatetime.fromtimestampで正しい結果が得られない状況はありますか?pytz

4

1 に答える 1

1

私の知る限り、はtzinfo (またはむしろそのサブクラス)pytz.timezone()のインスタンスを提供するため、で使用してもまったく問題ありません。datetime.fromtimestamp()

zoneinfo ファイルが更新されている限り、pytzその方法を使用してローカライズされた日時を作成できます。ただし、2 つのゾーン間で datetime を変換するのは、このastimezone()メソッドを使用すると非常に簡単です。私が正しければ、基本的tzinfoに日時のプロパティを切り替えます。

于 2012-08-21T13:34:31.430 に答える