2015-02-23 7 views
0

Я хочу, чтобы иметь возможность принимать пользовательский ввод из списка строк в качестве аргументов, таких каквыбор из списка питона

x = get_user_input(['yes', 'no', 'maybe'])

Если пользователь не вводит вход из списка. Наконец, программа должна вернуть часть списка, которую пользователь выбирает.

+0

Вам необходимо прочитать ввод пользователя и проверить, является ли он одним из допустимых входов – thefourtheye

+0

только начать с наилучшего сценария - пользователь вводит что-то, и это один из необходимых входов, а затем модифицируйте программу для обработки условия ошибки. – karthikr

+0

Что такое OP? Проверьте мои анны .. PLS отметить его правильно, если он работает на вас! :-) – Ananth

ответ

3
def get_user_input(allowed_choices): 
    while True: 
     s = raw_input("Enter your choice " + "/".join(allowed_choices) + ": ") 
     if s in allowed_choices: 
      return s 

x = get_user_input(['yes', 'no', 'maybe']) 

Если вы хотите сравнить нечувствительность к регистру, используйте s.lower() in allowed_choices.

Смежные вопросы