2017-01-18 4 views

答えて

1

これはISO 8601準拠の文字列です。これは様々なlibraries that can convertです。しかしこれをタイムゾーン変換と組み合わせることができます:

import datetime as dt 
from pytz import timezone 

def convert_my_iso_8601(iso_8601, tz_info): 
    assert iso_8601[-1] == 'Z' 
    iso_8601 = iso_8601[:-1] + '000' 
    iso_8601_dt = dt.datetime.strptime(iso_8601, '%Y-%m-%dT%H:%M:%S.%f') 
    return iso_8601_dt.replace(tzinfo=timezone('UTC')).astimezone(tz_info) 

my_dt = convert_my_iso_8601('2017-01-17T20:02:45.767Z', timezone('MST')) 
+0

昼間の節約時間を考慮する方法はありますか?上記のコードではありません – rodee

+0

どのようにDSTを考慮に入れませんか? Zは元のタイムスタンプがズールーであることを意味します。したがって、DSTはありません。したがって、私はあなたがDSTのために行う必要がある唯一のことは、1つのタイムゾーンを適用することだと思います。私はMSTを使用して以来初めて使用しました。あなたは何のタイムゾーンを思いついたのですか? –

+0

入力はまだzuluですが、DSTを使ってMSTに変換したいと思います。 – rodee

関連する問題