Possible Duplicate:
In Python, how to I iterate over a dictionary in sorted order?Как заказать мой словарь в python?
Мне нужна помощь в словарях. У меня есть два словаря, и я хочу добавить значения идентичных ключей в эти два словаря. Мне нужно составить список суммирования значений, имеющих один и тот же ключ. Я сделал список, но те значения, которые их ключи являются единственными в двух словарях, добавляются после завершения всех вычислений. То, что я имею в виду:
dectionary1= {8: 2, 0: 6, 2: 5, 3: 34}
dectionary2= {8: 6, 1: 2, 3: 2}
Мой список должен быть:
summing= [6, 2, 5, 36, 8]
, так как он будет принимать 0 и проверить, есть ли в dectionary 2 0, а затем он будет принимать 1 (НЕ 2) и проверьте, найден ли он в dectionary 1, чтобы заказать список.
Я получил это до сих пор:
summing=[8, 6, 5, 36, 2]
Здесь он сначала принимает ключ (8) нет (0) !! Я хочу, чтобы все было в порядке.
Чтобы увидеть мой код, то, что я до сих пор:
dic1= {8: 2, 0: 6, 2: 5, 3: 34}
dic2= {8: 6, 1: 2, 3: 2}
p=[]
for x in dic1:
if x in dic2:
g=dic1[x]+dic2[x]
p=p+[g]
else:
p=p+[dic1[x]]
for m in dic2:
if m in dic1:
p=p
else:
p=p+[dic2[m]]
Я думаю, если я могу сделать словари упорядоченных по возрастанию, это будет намного проще, но как?
Мой питон Wing IDE 3,2
Спасибо
'common_keys = set (dic1.keys()) & set (dic2.keys())'. И элементы dict не сортируются, поэтому у вас нет такой вещи, как «в порядке» для вашего дела. – ThiefMaster