ホームページ  >  記事  >  バックエンド開発  >  Python でタイムゾーンの短縮名を含むタイムスタンプ文字列を解析するにはどうすればよいですか?

Python でタイムゾーンの短縮名を含むタイムスタンプ文字列を解析するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-24 08:59:30523ブラウズ

How to Parse Timestamp Strings with Abbreviated Timezone Names in Python?

Python でのタイムゾーンの短縮名を使用したタイムスタンプ文字列の解析

タイムゾーンの短縮名を使用したタイムスタンプ文字列の解析には、Python 特有の課題が生じます。組み込みの dateutil ライブラリは、タイムスタンプの解析を容易にする parser.parse() 関数を提供しますが、本質的にタイムゾーンの略語には対処しません。

この問題に取り組むための、シンプルで効果的な解決策は、次の tzinfos キーワード引数を利用します。パーサー.parse()。この引数は、タイムゾーンの略語を対応する GMT オフセット (秒単位) にマッピングする辞書を受け入れます。

tzinfos 辞書を設定するには、タイムゾーンの略語とオフセットのリストを手動で作成するか、外部ソースから取得します。辞書が確立されたら、次のコードはタイムスタンプ文字列を解析し、対応するタイムゾーンを取得する方法を示します。

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

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

# Create timezone abbreviation to offset dictionary
tzd = {
    'PST': -8*3600,
    'PDT': -7*3600,
    'MST': -7*3600,
    'MDT': -6*3600,
    'CST': -6*3600,
    'CDT': -5*3600,
    'EST': -5*3600,
    'EDT': -4*3600
}

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

このコードは、指定されたタイムゾーンの略語を反復処理し、略語ごとにタイムスタンプ文字列を解析し、解析された日時オブジェクトと、対応するタイムゾーン名が表示されます。

このアプローチでは、タイムゾーンが短縮されたタイムスタンプ文字列を効果的に処理できるため、解析と解釈が容易になります。

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

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