2017-04-13 44 views
1

我是使用Python的初学者。我正在尝试为一系列问题创建一个循环。我想要它做的是要求用户输入一个与提供的选项相对应的数字,范围是1-4。如果用户在他们之间输入一个数字,它会记录下来并进行下一个问题。但是,即使用户输入了其他内容,它也会显示它不正确(因为我使用了else语句),但不再重复询问同一个问题,而是简单地继续。请有人指出我正确的方向吗?使用循环的初学Python帮助

这里是一个示例代码。

print() 
print("Please select the module ") 
print("Press 1 for") 
print("Press 2 for") 
print("Press 3 for") 
print("Press 4 for") 

choice = input("> ") 
if choice == '1': 
buddy.module = ("JP") 
elif choice == '2': 
buddy.module = ("ID") 
elif choice == '3': 
buddy.module = ("MC") 
elif choice == '4': 
buddy.module = ("MC") 
else: 
print("Incorrect option") 

回答

2

你可以在这里做一个while循环是这样的:

choice = 0 
while choice not in['1','2','3','4']: 
    print() 
    print("Please select the module ") 
    print("Press 1 for") 
    print("Press 2 for") 
    print("Press 3 for") 
    print("Press 4 for") 
    choice = input("> ") 
    if choice == '1': 
     buddy.module = ("JP") 
    elif choice == '2': 
     buddy.module = ("ID") 
    elif choice == '3': 
     buddy.module = ("MC") 
    elif choice == '4': 
     buddy.module = ("MC") 
    else: 
     print("Incorrect option")