输入用字符串表示两个字典,输出合并后的字典。字典的键用一个字母或数字表示。注意:1和‘1’是不同的关键字!
输入格式:
在第一行中输入第一个字典字符串;
在第二行中输入第二个字典字符串。
输出格式:
在一行中输出合并的字典,输出按字典序。
"1" 的 ASCII 码为 49,大于 1,排序时 1 在前,"1" 在后。其它的字符同理。
思路都在代码注释里。
a=dict(eval(input()))#直接将输入的字符串转换成字典形式
b=dict(eval(input()))
ls=a.keys()#读取字典的键
lt=b.keys()
new={}#生成一个新的字典储存两字典相加后的字典
for i in ls:
if i in lt:#判断两个字典中的键 如果相等则键对应的值相加
new[i]=a[i]+b[i]
if i not in lt:#将第一个字典含有的而第二个字典没有的元素加入新字典
new[i]=a[i]
for i in lt:
new[i]=new.get(i,b[i])#将第二个字典含有的而第一个字典没有的元素加入新字典
items=list(new.items())
items.sort(key=lambda x:(x[0] if type(x[0])==int else ord(x[0])))#将返回的列表按键升序排列
items=dict(items)
print(items)