ホームページ > バックエンド開発 > Python チュートリアル > Python でタイムゾーンを変換する方法: 包括的なガイド

Python でタイムゾーンを変換する方法: 包括的なガイド

Susan Sarandon
リリース: 2024-10-26 06:38:02
オリジナル
274 人が閲覧しました

How to Convert Timezones in Python: A Comprehensive Guide

Python のタイムゾーン変換の説明

異なるタイムゾーン間での時刻の変換は、Python の一般的なタスクとなる場合があります。この質問では、この変換を効果的に実行する方法について説明します。

推奨されるアプローチには、対象の時刻を UTC 対応の日時オブジェクトに変換することが含まれます。これは、Python の datetime オブジェクトには本質的にタイムゾーン情報が含まれていないためです。

時間が UTC になったら、astimezone 関数を使用して希望のタイムゾーンに変換できます。たとえば、次のコードについて考えてみましょう。

<code class="python">from datetime import datetime
import pytz

utcmoment_naive = datetime.utcnow()
utcmoment = utcmoment_naive.replace(tzinfo=pytz.utc)</code>
ログイン後にコピー

これは、現在の UTC 時間を UTC 対応の日時オブジェクトに変換します。特定のタイムゾーンに変換するには、次のコマンドを使用します。

<code class="python">localDatetime = utcmoment.astimezone(pytz.timezone('America/Los_Angeles'))</code>
ログイン後にコピー

これにより、UTC 時間がロサンゼルスの太平洋時間 (PT) に変換されます。

時間が存在しない可能性があるシナリオでは、夏時間またはその他の要因により変換されたタイムゾーンについては、次のアプローチを使用できます。

<code class="python">localmoment_naive = datetime.strptime('2013-09-06 14:05:10', '%Y-%m-%d %H:%M:%S')
localtimezone = pytz.timezone('Australia/Adelaide')

try:
    localmoment = localtimezone.localize(localmoment_naive, is_dst=None)
    print("Time exists")

    utcmoment = localmoment.astimezone(pytz.utc)

except pytz.exceptions.NonExistentTimeError as e:
    print("NonExistentTimeError")</code>
ログイン後にコピー

これは、夏時間により時間が存在しない可能性を処理しながら、現地時間を UTC に変換しようとします。時間です。

以上がPython でタイムゾーンを変換する方法: 包括的なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート