2013-02-27 3 views
0

У меня есть простой словарь {'a': 1, 'b': 2, 'c': 3, 'd': 4 } и список ключей: ['a', 'd'].Как создать небольшой dict из другого dict с массивом ключей?

Каков лучший способ построить объект dict, содержащий только ключи из списка: {'a': 1, 'd': 4}?

+1

И что ваш способ сделать это? – Volatility

+0

Этого уже было сообщено здесь: http://stackoverflow.com/questions/11157704/python-intersection-between-a-list-and-keys-of-a-dictionary –

+0

Я новичок в python, просто "для" но это выглядит ужасно: d = {'a': 1, 'b': 2, 'c': 3, 'd': 4} l = ['a', 'd'] r = {} для ключа в l: r [key] = d [key] – user2114842

ответ

2
d = {'a': 1, 'b': 2, 'c': 3, 'd': 4 } 
l = ['a', 'd'] 

new_d = {k:d[k] for k in l} 

new_d теперь {'a': 1, 'd': 4}

+0

хороший ответ, [здесь есть метод] (http://stackoverflow.com/questions/1747817/ python-create-a-dictionary-with-list-comprehension? answertab = votes # tab-top) с помощью 'dict()' как использовать для этой цели. –

0
d = {'a':1, 'b':2, 'c':3, 'd':4} 
c = ['a', 'b'] 
new_d = {} 

for key in c: 
    new_d[key]= d[key] 
Смежные вопросы