Python: получение списка значений, связанных с одним ключом в словаре - PullRequest
2 голосов
/ 01 декабря 2011

Задача взять все фильмы, связанные со словарем актеров.

actor_dict = {'actor_A': [m1, m2, m3, m4], 'actor_B': [m5,m6,m7,m8]}

Как выделить список значений из всего словаря?

1 Ответ

4 голосов
/ 01 декабря 2011

Одна возможность будет:

movies_list = []
for v in actor_dict.itervalues():
    movies_list.extend(v)

Если вы хотите уникальные фильмы (если один фильм появляется в списках других актеров):

movies_set = []
for v in actor_dict.itervalues():
    movies_set.update(v)
movies_list = list(movies_set)

или

movies_list = list(reduce(set.union, map(set, d.itervalues())))

или (благодаря @DrTyrsa):

movies_list = list(set.union(*map(set, d.itervalues())))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...