字典合并

Posted skystarx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字典合并相关的知识,希望对你有一定的参考价值。

字典合并。输入用字符串表示两个字典,输出合并后的字典,字典的键用一个字母或数字表示。注意:1和‘1’是不同的关键字!

输入格式:

在第一行中输入第一个字典字符串 在第二行中输入第二个字典字符串

输出格式:

在一行中输出合并的字典,输出按字典序。"1"的ASCII吗为49,大于1,排序时1在前,"1"在后,其它的也一样。

输入样例1:

在这里给出一组输入。例如:

{1:3,2:5}
{1:5,3:7} 
 

输出样例1:

在这里给出相应的输出。例如:

{1:8,2:5,3:7}
 

输入样例2:

在这里给出一组输入。例如:

{"1":3,1:4}
{"a":5,"1":6}
 

输出样例2:

在这里给出相应的输出。例如:

{1:4,"1":9,"a":5}
d1=eval(input());d2=eval(input())
l1=[];l2=[]
pl={}
for i in d1:
    pl[i]=pl.get(i,0)+d1.get(i,0)
    if type(i)==type(1):
        l1.append(i)
    elif type(i)==type(‘w‘):
        l2.append(i)
for i in d2:
    pl[i] = pl.get(i, 0) + d2.get(i, 0)
    if type(i)==type(1):
        l1.append(i)
    elif type(i)==type(‘w‘):
        l2.append(i)
l1.sort();l2.sort()
list=l1+l2
print("{",end="")
cnt=0;length=len(pl)
for i in list:
    if i in pl:
        cnt += 1
        if type(i)==type(1):
            print("{}:{}".format(i,pl[i]),end="")
        else:
            print(‘"{}":{}‘.format(i,pl[i]),end="")
        del pl[i]
        if cnt!=length:
            print(",",end="")
print("}")

  

以上是关于字典合并的主要内容,如果未能解决你的问题,请参考以下文章

4.3 合并重复的条件执行片段

python多个字典“合并”成一个字典

嵌套字典。合并公共键并将值附加到列表中。 0 值未附加。里面的代码

Python snippet(代码片段)

将 counter.items() 字典合并到一个字典中

Python代码阅读(第26篇):将列表映射成字典