在 python 中添加持续时间



我有两个字符串:

current_time : 4:46:00 PM 
duration : 03:20:00 
current_time is : %I:%M:%S %p
duration is hour:minute:seconds format. 

我必须在时间中添加持续时间.在上面的情况下:我需要将输出获取为: 08:06:00 PM我尝试过的代码是:

 parsedtime =  time.strptime(current_time,"%I:%M:%S %p")
 parsedduration = time.strptime(duration,"%I:%M:%S")
 parsedtime + datetime.timedelta(parsedduration.tm_hour,parsedduration.tm_min,parsedduration.tm_sec)
 print parsedtime

以上显然不正确且不起作用,请建议最佳方法。

您的问题是混合timedatetime对象,而不是在timedelta中命名关键字参数。

from datetime import datetime, timedelta
current_time = "4:46:00 PM"
duration = "3:20:00"
parsed_time = datetime.strptime(current_time, "%I:%M:%S %p")
parsed_duration = datetime.strptime(duration, "%I:%M:%S")
then = parsed_time + timedelta(hours=parsed_duration.hour,
                               minutes=parsed_duration.minute,
                               seconds=parsed_duration.second)
result = then.strftime("%I:%M:%S %p")
# 08:06:00 PM
import datetime
today1= datetime.date.today()
difference= datetime.timedelta(1)
yesterday= today1 - difference
print (yesterday)

它会给你一个点,例如这个找到今天-1day。意思是昨天。

time1= time.localtime()
hour1=time1.tm_hour
min1=tim1.tm_min
#do your codes#

因此,您可以将小时和分钟定义为变量并进行数学运算。

最新更新