Сравнение списка ввода пользователя со словарем и распечатка соответствующего значения - PullRequest
0 голосов
/ 05 декабря 2018

Начнем с того, что это для школы, и я все еще учусь, поэтому я не ищу прямого решения.

Что я хочу сделать, так это принять информацию от пользователя (одно слово илиБольше).Затем я попадаю в список.У меня есть свой словарь, и код, который я публикую, правильно распечатывает значения.У меня вопрос: как сравнить символы в моем списке с ключами в словаре, а затем распечатать только те значения, которые соответствуют ключам?

Я также прочитал множество различных вопросов, касающихся словарей, но это не помогло.

Пример на выходе;

Слово: вау

Выход: 96669

user_word = input("Please enter a word: ")
user_listed = list(user_word)

def keypresses():
my_dict = {'.':1, ',':11, '?':111, '!':1111, ':':11111, 'a':2, 'b':22, 'c':222, 'd':3, 'e':33, 'f':333, 'g':4, 'h':44,
       'i':444, 'j':5, 'k':55, 'l':555, 'm':6, 'n':66, 'o':666, 'p':7, 'q':77, 'r':777, 's':7777, 't':8, 'u':88,
       'v':888, 'w':9, 'x':99, 'y':999, 'z':9999, ' ':0}

for key, value in my_dict.items():
    print(value)

1 Ответ

0 голосов
/ 05 декабря 2018

Я не собираюсь передавать вам код для проекта, но я обязательно отправлю вас в правильном направлении;

, так что, на мой взгляд, 2 части;сопоставьте каждый символ с ключом / получите значение и объедините числа для вывода.

Для первой части вы можете выполнять итерацию по символам, просто создав цикл for;

for letter in 'string':
    print(letter)

выдаст s t r i n g.Таким образом, вы можете использовать это, чтобы найти значение ключа (каждой буквы)

Затем вы можете получить определение в виде строки (чтобы не добавлять каждое число математически), например что-то вроде:

letter = 'w'
value = my_dict[letter]
value_as_string = str(value)

Затем объедините все это в цикл for и добавьте каждую строку друг к другу, чтобы создать желаемый результат.

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