ホームページ > バックエンド開発 > Python チュートリアル > Python で時間文字列間の時間間隔と平均継続時間を計算するにはどうすればよいですか?

Python で時間文字列間の時間間隔と平均継続時間を計算するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-30 16:43:11
オリジナル
666 人が閲覧しました

How do I calculate time intervals and average durations between time strings in Python?

時間文字列間の時間間隔の計算

Python で 2 つの時間文字列間の時間差を求めることは、日時モジュール。これを達成する方法を検討し、平均を計算する追加のニーズに対処しましょう。

時刻文字列を datetime オブジェクトに解析するには、datetime.strptime() メソッドを利用できます。次の例を考えてみましょう。

from datetime import datetime

start_time = "10:33:26"
end_time = "11:15:49"
FMT = '%H:%M:%S'

# Parse time strings into datetime objects
start_dt = datetime.strptime(start_time, FMT)
end_dt = datetime.strptime(end_time, FMT)
ログイン後にコピー

結果は、開始時刻と終了時刻を表す 2 つの datetime オブジェクト、start_dt と end_dt です。

時間間隔の計算

2 つの時間間の時間間隔を計算するには、start_dt をend_dt:

time_interval = end_dt - start_dt
ログイン後にコピー

time_interval は、2 つの時間の差を含む timedelta オブジェクトになります。時間、分、秒の属性をそれぞれ使用して、時間、分、秒の期間値にアクセスできます。

平均期間の計算

平均を計算するには複数の時間間隔の継続時間を秒に変換して平均を取ることができます:

# Convert the time interval to seconds
interval_seconds = time_interval.total_seconds()

# Store the converted seconds in a list
seconds_list.append(interval_seconds)

# Calculate the average duration
average_seconds = sum(seconds_list) / len(seconds_list)
ログイン後にコピー

Handling Negative結果

終了時間が開始時間より前に発生した場合、time_interval は負の値になります。このケースに対処するには、間隔が午前 0 時をまたぐと仮定して、日数を手動でゼロに設定します。

if time_interval.days < 0:
    time_interval = timedelta(
        days=0,
        seconds=time_interval.seconds,
        microseconds=time_interval.microseconds
    )
ログイン後にコピー

以上がPython で時間文字列間の時間間隔と平均継続時間を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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