5

例えば:

>>> print dt
2012-12-04 19:00:00-05:00

ご覧のとおり、この日時オブジェクトがあります。この日時オブジェクトを GMT -5 のエポック秒に変換するにはどうすればよいですか。

どうすればいいですか?

4

1 に答える 1

6

あなたの日時は単純な日時ではありません、それはそれが入っているタイムゾーンについて知っています(あなたの印刷物は-5であると述べています)。したがって、エポックに変換する前に、UTCとして設定する必要があります

>>> import time, pytz
>>> utc = pytz.timezone('UTC')
>>> utc_dt = utc.normalize(dt.astimezone(utc))
>>> time.mktime(utc_dt.timetuple())
1355270789.0 # This is just to show the format it outputs

dtオブジェクトがナイーブな日時オブジェクトである場合、GMT 0の間の正しい時間を見つけながら、夏時間に準拠するようにタイムゾーンを操作する必要があります。たとえば、冬のルーマニアは+2で、夏は+2です。 +3。

-5の例では、New-Yorkは次のことを行います。

>>> import time,pytz
>>> timezone = pytz.timezone('America/New_York')
>>> local_dt = timezone.localize(dt)

これで、ナイーブでない日時ができ、最初に説明したようにエポックタイムを取得できます。楽しむ

于 2012-12-11T23:24:26.890 に答える