字典合并

字典合并。输入用字符串表示两个字典,输出合并后的字典,字典的键用一个字母或数字表示。注意: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("}")

  

posted @ 2020-02-20 00:32  一斜星辰酱  阅读(875)  评论(0编辑  收藏  举报