Python で日時の間で 24 時間が経過したかどうかを確認する方法
2 つの日時の間で 24 時間が経過したかどうかを確認することは、Python での一般的なタスクです。プログラミング。提供されたメソッド time_diff は、最後の実行時刻 (last_updated) と 24 時間後の 1 日の間の時間差を計算します。ただし、24 時間が経過したかどうかを確認するには、さらに手順が必要です。いくつかのアプローチを次に示します。
1.単純な日時比較 (UTC)
last_updated が UTC の単純な日時 (タイムゾーン情報なし) を表す場合、datetime モジュールを使用できます:
from datetime import datetime, timedelta if (datetime.utcnow() - last_updated) > timedelta(hours=24): # More than 24 hours have passed
2。単純な日時比較 (現地時間)
last_updated が現地時間を表す場合、時間モジュールを使用できます:
import time DAY = 86400 now = time.time() then = time.mktime(last_updated.timetuple()) if (now - then) > DAY: # More than 24 hours have passed
3.認識された日時の比較 (タイムゾーンを認識)
last_updated がタイムゾーンを認識した日時の場合、それを UTC に変換し、現在の UTC 時間と比較できます:
from datetime import datetime, timedelta last_updated_utc = last_updated.replace(tzinfo=None) - last_updated.utcoffset() if (datetime.utcnow() - last_updated_utc) > timedelta(hours=24): # More than 24 hours have passed
4. tzlocal モジュールの使用
tzlocal モジュールを使用して、単純な datetime のタイムゾーン変換を処理できます:
from datetime import datetime, timedelta from tzlocal import get_localzone local_timezone = get_localzone() last_updated_aware = local_timezone.localize(last_updated) if (datetime.now(local_timezone) - last_updated_aware) > timedelta(hours=24): # More than 24 hours have passed
以上がPython で 2 つの日時の間で 24 時間が経過したかどうかを確認するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。