问题我如何打印出剩余的加班时间
示例:我必须工作8个小时,如果我的时间超过OUTPUT所示的8个小时,那么我只想打印00:03:00。 这意味着我当天要加班3分钟。
from datetime import datetime
s1 = '07:15:00'
s2 = '16:18:00'
FMT = '%H:%M:%S'
tdelta = datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT)
print(tdelta)
输出
9:03:00
答案 0 :(得分:0)
您需要从tdelta
中减去工作日的长度(这可能会花费一个小时来计算休息时间)。
答案 1 :(得分:0)
用timedelta
对象减去工作日的时间...
from datetime import datetime, timedelta
s1 = '07:15:00'
s2 = '16:18:00'
FMT = '%H:%M:%S'
work_time = timedelta(hours=8)
lunch_time = timedelta(hours=1)
tdelta = datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT) - work_time - lunch_time
print(tdelta)
输出:
0:03:00