ホームページ  >  記事  >  バックエンド開発  >  Python での日付/時刻解析で短縮タイムゾーン名を処理するにはどうすればよいですか?

Python での日付/時刻解析で短縮タイムゾーン名を処理するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-24 08:54:01202ブラウズ

How to Handle Abbreviated Time Zone Names in Date/Time Parsing with Python?

Python での短縮タイム ゾーン名を含む日付/時刻文字列の解析

Python では、短縮タイム ゾーン名を含むタイムスタンプの解析が困難になる場合があります。 dateutil ライブラリの parse() 関数を使用しようとするかもしれませんが、短縮タイム ゾーンはネイティブに処理されません。

包括的なソリューション

幸いなことに、dateutil は代替手段を提供します。解決。 GMT オフセットへのタイム ゾーン名の辞書を tzinfos キーワード引数に渡すことで、必要なタイム ゾーン情報を指定できます。これにより、幅広いタイムゾーンの略語を柔軟に解析できるようになります。以下に例を示します。

<code class="python">import dateutil.parser as dp

# Dictionary mapping time zone abbreviations to GMT offsets
tzd = {'EST': -5*3600, 'PDT': -7*3600, ...}

s = 'Sat, 11/01/09 8:00PM'

for tz_code in ('PST','PDT','MST','MDT','CST','CDT','EST','EDT'):
    dt = s+' '+tz_code
    print(dt, '=', dp.parse(dt, tzinfos=tzd))</code>

この例では、スクリプトは一般的なタイム ゾーンの略語のリストを反復処理し、それに応じて指定されたタイムスタンプ文字列を解析します。出力は次のようになります。

Sat, 11/01/09 8:00PM PST = 2009-11-01 20:00:00-08:00
Sat, 11/01/09 8:00PM PDT = 2009-11-01 20:00:00-07:00
...

タイム ゾーン ディクショナリの作成

タイム ゾーン ディクショナリの生成は、タイム ゾーン ディクショナリへの略語のマップを作成するのと同じくらい簡単です。対応するGMTオフセット。これについては、timeanddate.com や Wikipedia などのリソースを参照できます。一部の略語には複数の解釈が可能な場合があるため、文脈に基づいてどの解釈を割り当てるかを慎重に検討することが重要です。

結論

で tzinfos キーワード引数を利用することで、 dateutil の parse() 関数を使用すると、Python で短縮タイムゾーンのタイムスタンプを解析でき、より包括的な日付/時刻処理機能が可能になります。

以上がPython での日付/時刻解析で短縮タイムゾーン名を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。