日時オブジェクトをタイムゾーンに対応させる
タイムゾーンを認識しない日時オブジェクトを扱う場合、タイムゾーンと比較するためにタイムゾーンを割り当てる必要があります。 -認識しているカウンターパート。幸いなことに、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 サイトの他の関連記事を参照してください。