2015-08-04 2 views
-2

Если у меня есть два dicts в питонаPython Concat два словаря с запятой

d1={1:2,3:4} 
d2={5:6,7:9} 

Как можно объединить, что сделать

d2 = {{1:2,3:4}, {5:6,7:9}} 
+0

Посмотрите на 'numpy' (структурированные массивы, также называемые массивами записей) и используйте либо функцию' concatenate', либо 'vstack' –

+0

Чтобы уточнить, вы хотите объединить в один словарь (т.е.:' d2 = {1: 2,3: 4,5: 6,7: 9} '), или сделать словарь' d2' двух словарей? –

+1

'd2 = {{1: 2,3: 4}, {5: 6,7: 9}}' недействителен Python. Вы имеете в виду 'd2 = [{1: 2,3: 4}, {5: 6,7: 9}]', 'd2 =" {{1: 2,3: 4}, {5: 6,7 : 9}} "', 'd2 = {9: {1: 2,3: 4}, 10: {5: 6,7: 9}}', что @TheBrofessor сказал ...? – Amadan

ответ

1

Как уже указывал @Amadan, вам кажется, что вам нужен список из двух предметов, содержащих d1 и d2. Это может быть легко создано с помощью следующих действий:

d1 = {1:2,3:4} 
d2 = {5:6,7:9} 

mylist = [d1, d2] 

print mylist 

Это будет отображать детали следующим образом:

[{1: 2, 3: 4}, {5: 6, 7: 9}] 

Вы можете затем перебирать каждый словарь следующим образом:

for d in list_of_d1_d2: 
    for k, v in d.items(): 
     print "{}: {}".format(k,v) 
    print 

Это будет дисплей:

1: 2 
3: 4 

5: 6 
7: 9 

Протестировано с использованием Python 2.7

1

Ваш запрос d2 не на самом деле словарь, но список , Словари содержат пары ключ-значение. d2 = {{1: 2,3: 4}, {5: 6,7: 9}} не будет работать, я не думаю. d2 = [{1: 2, 3: 4}, {5: 6, 7: 9}], вероятно, сработает и будет легче извлекать информацию.

Смежные вопросы