我被问到要从用户那里获得两次输入作为函数的时间(opening_time,closing_time),我必须确定时间之间的时差,但是如果这些值之一不是时间格式,则返回的值应该是-1。我已经计算了时差,但是,我无法解决以下条件:如果变量中的任何一个都不采用时间格式,则返回-1。 请我是编码的新手,对于任何错误,我们深表歉意,并请写一个简单的解决方案,不要那么复杂。
from datetime import datetime
def compute_opening_duration(opening_time, closing_time):
str_format = "%H:%M:%S"
if opening_time or closing_time != datetime.time.str_format:
print(-1)
else:
tdelta = datetime.strptime(closing_time,str_format)
- datetime.strptime(opening_time,str_format)
print(tdelta)
答案 0 :(得分:1)
尝试此操作-它将尝试使用您提供的字符串格式将输入转换为日期时间。如果任何一个都失败,则将打印-1。
from datetime import datetime
def compute_opening_duration(opening_time, closing_time):
str_format = "%H:%M:%S"
try:
t_open_time = datetime.strptime(closing_time,str_format)
t_closing_time = datetime.strptime(opening_time,str_format)
tdelta = datetime.strptime(closing_time,str_format) - datetime.strptime(opening_time,str_format)
print(tdelta)
except:
print(-1)
compute_opening_duration("04:10:21", "08:22:12")