Как вывести значение словаря после сравнения с списком?

Заранее извиняюсь за вопрос, только начал изучать Python
Есть словарь:
taxonomy = {'Драма':1,'Комедия':3,'Боевик':64,'Ужасы':121,'Фантастика':5,'Документальное':6,'Мультфильмы':7,

Ключ это название категории, а значение это id той категории. И есть список:
list = ['Вестерн', 'Фентези', 'Боевик', 'Ситкомы', 'Комедия', 'Ужасы',]

Как вывести значение словаря если ключ совпадает со значение в списке?
Например {...,'Боевик':64,....} + [...'Боевик',...] = [.....64,....]
  • Вопрос задан
  • 110 просмотров
Решения вопроса 2
adugin
@adugin Куратор тега Python
list(map(taxonomy.get, lst))
Ответ написан
total4c
@total4c
Говнокодер
Тут можно применить два способа, но может вы найдете и другие.

1. Генератором списка
dictionary = {'Драма': 1, 'Комедия': 3, 'Боевик': 64, 'Ужасы': 121, 'Фантастика': 5, 'Документальное': 6, 'Мультфильмы': 7}

categories = ['Вестерн', 'Фентези', 'Боевик', 'Ситкомы', 'Комедия', 'Ужасы']

values = [str(dictionary[i]) for i in dictionary.keys() if i in categories]
print(", ".join(values))


2. Обычным циклом
dictionary = {'Драма': 1, 'Комедия': 3, 'Боевик': 64, 'Ужасы': 121, 'Фантастика': 5, 'Документальное': 6, 'Мультфильмы': 7}

categories = ['Вестерн', 'Фентези', 'Боевик', 'Ситкомы', 'Комедия', 'Ужасы']

for key, value in dictionary.items():
	if key in categories: print(value)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы