为什么我的程序打印这个字符串,即使我有一段时间!= string

时间:2017-04-20 15:22:04

标签: python if-statement while-loop

你好我做了这个程序,要求用户输入选项Print,sort1,sort2或quit

usrinpt=0

while usrinpt != "quit":    #if usrinpt == quit then no if statements right?
    usrinpt = input("Enter choice Print, Sort1 (distance), Sort2 (price) or Quit : ")
    usrinpt = usrinpt.lower()
    if usrinpt == "print":
        PrintList(mat)
        pass
    elif usrinpt == "sort1":
        SelectionSortDistorPrice(mat,0)
        PrintList(mat)
        pass
    elif usrinpt == "sort2":
        SelectionSortDistorPrice(mat, 1)
        PrintList(mat)
       pass
    elif usrinpt != "quit"or"sort1"or"sort2":   #why does it print the string even when i enter quit?
        print("please enter a valid choice")
        pass
  • 选择的预期结果"退出"是为了阻止程序
  • 实际结果是程序打印"请输入有效的选择"然后退出

如果输入未说明的选项,如何修复它只打印该字符串?

1 个答案:

答案 0 :(得分:1)

elif usrinpt not in ["quit","sort1","sort2"]: