如果有人有python / jython知识,我想更好地理解我的代码,我很乐意听。
这是我的代码(见下文)。 我的结果是实现循环并保持程序运行,而不是每次用户输入错误输入时重新启动程序。
程序现在循环成功但只在输入正确的输入后显示错误信息,有人可以指向正确的方向吗?在此先感谢:)
def inputValidator():
while True:
num = requestInteger("Please give me a number between 50 and 112")
if num > 50 and num < 112:
print "Successful Login"
break
elif num < 50:
print "Error! Please input a number more than 50 you entered", num
elif num > 112:
print "Error! Please input a number less than 112 you entered", num
答案 0 :(得分:1)
因此,如果我正确理解您的问题,我假设您只是想让用户输入50到112之间的数字?
看起来应该是这样的,缩进非常重要!
def inputValidator():
while True:
try:
number=int(raw_input("Enter a number between 50 and 112! >>> ")) ## Makes input an integer
if (number > 50) and (number < 112): ## Checks if number is between 50 and 112
print "Number accepted!"
break
else:
continue
except:
print "Please enter a number!"
return number ## Returns input number
另外,我不确定你是否知道“try”语句,但它只是阻止程序崩溃。您还可以更改文本以使其看起来更好!希望这可以帮助! :)
PS:我认为您只是复制并粘贴了该代码,以便将来参考,使用“Ctrl + K”正确,轻松地格式化它或只有4个以上的空格! ;)