2014-02-09 5 views
-1

супер новичок на питоне здесь.Преобразование списка словарей в словарь

Я пытаюсь преобразовать список словарей в один словарь.

Так, что-то вроде этого:

[ {'Name': 'JD', 'Number': 1}, 
    {'Name': 'Turk', 'Number': 2}, 
    {'Name': 'Carla', 'Number': 3}], 

Я хотел бы изменить его в

{'Name': 'JD', 'Number': 1, 
'Name': 'Turk', 'Number': 2, 
'Name': 'Carla', 'Number': 3} 

Я пытался это на некоторое время и смотрел на кучу ответов здесь , но он не работает.

Спасибо!

+5

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

+0

Он может использовать индекс в качестве ключа. – jeremyjjbrown

+1

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

ответ

1

Нет, вы не можете этого сделать. Как roippi сказал, Ключи являются уникальными

Попробуйте вместо этого:

>>> from collections import defaultdict 
>>> new_dict = defaultdict(list) 
>>> for d in li: 
    for k, v in d.items(): 
     new_dict[k].append(v) 

>>> new_dict 
defaultdict(<class 'list'>, {'Number': [1, 2, 3], 'Name': ['JD', 'Turk', 'Carla']}) 
Смежные вопросы