2013-07-31 2 views
-1

Предположим, у меня есть строка -> (a, b, c, 1,2,3)Соответствие ввода из строки символов?

Пользователь должен выбрать символ из этой строки, возможно, b?

PickCharacter=raw_input("Pick a character? ") 

входа пользователя, «б»

код признает, что «B» представляет собой символ в строке и принимает входные данные.

Принимая во внимание, что если пользователь вводит «f», программа отклоняет ввод, потому что этот символ не находится внутри строки.

Как определить, выбрал ли пользователь один из следующих символов из списка?

+3

Как и каждый другой вопрос о домашнем задании, вы, как правило, учитесь больше, если сначала пытаетесь решить проблему самостоятельно. – roippi

ответ

3
string_list = strng.split(",") 
if pick in string_list: 
    print "Yep" 
else: 
    print "Nope" 
+1

ummm, который обычно не делает то, что он хочет (но, по крайней мере, показывает ему путь вперед) –

+0

О, я думал, что у него есть список строк, вот что это похоже ... о хорошо ... – Jiminion

+0

Предполагая, что он делает есть ли вход, который он помещает в строку «a», не будет найден с вашим решением: P –

1

Если у вас есть эти одиночные строковые литералы в списке:

my_list = ['a', 'b', 'c', '1', '2', '3'] 

Предположим, пользователь выбирает буквальное 'c':

if user_choice in my_list: 
    print "Valid Choice" 
else:  
    print "Please provide a valid input" 

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

+2

AAAAHHHHHHH !! Исправьте свой шрифт! – iCodez

+0

Darn, теперь ВЫ тоже кричите ... :) – Jiminion

+0

Возможно, вы захотите изучить [How do Я отформатирую свои кодовые блоки?] (Http://meta.stackexchange.com/q/22186) :-) –

2

Вы можете использовать метод, называемый индекс

string_list.index (PickCharacter)

Это вернет какую позицию символа они ввели в найдена в строке. Если он не найден, он вернет ValueError.

+0

он не возвращает 0 для не найден! –

+0

правильный, извините неправильный язык, мой плохой. – lucasjmoore

+0

есть язык, который возвращает 0 для индекса? –

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