这是我的代码,由于某种原因,即使我输入了正确的AM或PM,它也会继续执行
while True:
user_in = input('Please enter the time in the following 12Hour format HH:MM AM|PM : ')
time_in = user_in.split()
time_input = time_in[0].split(':')
latin_input = time_in[1]
if (latin_input != 'AM' and latin_input != 'PM'):
continue
else:
break
答案 0 :(得分:0)
我不确定您为什么遇到这个问题。我尝试了您的代码,它可以正常工作。
我建议先分割和开始建立索引,然后检查是否有时间和latin_input,因此在使用索引时,它不会破坏代码。首先进行验证,然后进行处理。像这样:
while True:
user_in = input('Please enter the time in the following 12Hour format HH:MM AM|PM : ')
if len(user_in.split()) != 2 and not user_in.endswith(('AM', 'PM')):
continue
time_in, latin_input = user_in.split()
break