Я пытаюсь создать меню здесь.Меню позволяет пользователю вводить параметры.Существует также функция проверки, позволяющая проверить, была ли опция, введенная пользователем, действительной или нет.
def menu():
while True:
display_menu()
user_input = validate("Choose Option")
if user_input == 1:
pass
elif user_input == 2:
exit()
def display_menu():
print("1) Application")
print("2) Quit Application")
def validate1(q):
user_input = input(q)
if len(user_input) == 0:
return False
elif user_input != "1" or user_input != "2": # Error is likely here
print("Invalid option, please choose another option")
return False
else:
return user_input
При запуске этого кода вы получаете:
1) Application
2) Quit Application
Choose Option
Однако после ввода 1
, функция проверки считает, что ввод 1
недействителен, и вы получаете:
Invalid option, please choose another option
1) Application
2) Quit Application
Choose Option
Это не должно иметь место, поскольку 1
должно быть допустимым.Сначала я подумал, что это была ошибка относительно типа переменной user_input
, и я попытался изменить ее (из строки 22):
elif user_input != 1 or user_input != 2:
Однако ошибка все еще сохраняется.
В чем здесь ошибка?