ホームページ > バックエンド開発 > Python チュートリアル > Python の「datetime」オブジェクトをタイムゾーンに対応させるにはどうすればよいですか?

Python の「datetime」オブジェクトをタイムゾーンに対応させるにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-09 07:38:13
オリジナル
328 人が閲覧しました

How Can I Make Python's `datetime` Objects Timezone Aware?

日時オブジェクトをタイムゾーンに対応させる

タイムゾーンを認識しない日時オブジェクトを扱う場合、タイムゾーンと比較するためにタイムゾーンを割り当てる必要があります。 -認識しているカウンターパート。幸いなことに、Python にはこの問題に対処するためのメソッドがいくつか用意されています。

一般的なシナリオでの localize() の使用

一般的なケースでは、localize() メソッドが推奨されるアプローチです。目的のタイムゾーンを指定することで、新しいタイムゾーン対応の日時オブジェクトを作成します。

import datetime
import pytz

unaware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0)
now_aware = pytz.utc.localize(unaware)
ログイン後にコピー

UTC タイムゾーンに対して replace() を使用する

UTC タイムゾーンの特定の場合夏時間は適用されませんが、 replace() メソッドはより簡単な方法を提供します。解決策:

now_aware = unaware.replace(tzinfo=pytz.UTC)
ログイン後にコピー

デフォルトのタイムゾーンの選択

タイムゾーン情報のないレガシー データを扱う場合、デフォルトのタイムゾーンを割り当てることができます。ただし、これには不正確な時刻表現のリスクが伴います。データが UTC であるという前提の場合、デフォルトのタイムゾーンとして pytz.UTC を使用することが許容できる妥協策になる可能性があります。

比較と影響

ここに重要な点があります。注: 特定のタイムゾーンをデフォルトにすることは一時的な解決策であり、新たな状況に拡張すべきではありません。推奨されるベスト プラクティスは、潜在的な不一致を避けるために、すべての日時オブジェクトのタイムゾーンが明示的に指定されていることを確認することです。

以上がPython の「datetime」オブジェクトをタイムゾーンに対応させるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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