我有两个字符串:
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
以上显然不正确且不起作用,请建议最佳方法。
您的问题是混合time
和datetime
对象,而不是在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#
因此,您可以将小时和分钟定义为变量并进行数学运算。