【发布时间】:2018-02-22 07:25:09
【问题描述】:
我正在尝试创建一个连续的用户输入,但如果输入了错误的信息,我不希望它从头开始重新启动。例如,
a = 1
while a ==1:
Number = raw_input("Number: ")
if len(Number) != 3:
print "\n Error, please enter 4 digits \n"
else:
Day = raw_input("Day: ")
if not Day.isdigit():
print "\n Error, please enter day in digits \n"
在这里,如果该人在第一次输入时输入了非 4 位数字,则循环将结束并再次返回开始。但是,如果他到达第二个输入并输入一个非数字字符串,则循环也将结束并返回到开始。我如何让它不回到开始,而是再次请求这一天?
【问题讨论】:
-
循环
a==1的条件永远不会变为假,因为a永远不会改变。如果要结束循环,请更改a。 -
循环的全部意义在于它回到起点,这就是为什么它是一个循环..也许你不需要循环?请澄清您的问题
-
我不想结束循环,因为我希望用户继续输入数据,并且我可以选择让用户手动结束循环。也许我不应该使用循环,这就是我的问题:还有其他选择可以做我想做的事吗?
标签: python loops user-input