簡體   English   中英

Django Python如何在給定兩個時間字符串的情況下計算時差

[英]Django Python how to calculation time difference given two time strings

在Django Python中,我有2個HH:mm的時間字符串,如何獲取持續時間(差異)?

例如:

15:30 and 11:00 ---> difference is 04:30
19:28 and 12:25 ---> difference is 07:03

我們可以首先使用以下命令將字符串解析為datetime對象:

from datetime import datetime, time

t1 = datetime.strptime(time_str1, '%H:%M')
t2 = datetime.strptime(time_str2, '%H:%M')

然后,我們可以獲得datetime對象之間的絕對差:

dt = abs(t2 - t1)

現在,我們可以計算小時和分鍾數,例如:

t = time(dt.seconds // 3600, (dt.seconds // 60) % 60)

然后我們可以使用strftime打印該數字:

t.strftime('%H:%M')

或作為功能:

from datetime import datetime, time

def time_diff(time_str1, time_str2):
    t1 = datetime.strptime(time_str1, '%H:%M')
    t2 = datetime.strptime(time_str2, '%H:%M')
    dt = abs(t2 - t1)
    return time(dt.seconds // 3600, (dt.seconds // 60) % 60).strftime('%H:%M')

例如:

>>> time_diff('15:30', '11:00')
'04:30'
>>> time_diff('19:28', '12:25')
'07:03'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM