PTA每日一题-Python-字典合并+排序

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

输入格式:

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

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

输出格式:

在一行中输出合并的字典,输出按字典序。

“1” 的 ASCII 码为 49,大于 1,排序时 1 在前,“1” 在后。其它的字符同理。

实现

#!/usr/bin/env python3
# -*- encoding: utf-8 -*-
"""
@File    :   test_3.py    
@Contact :   [email protected]
@Author :    Jason
@Date :      3/26/2022 1:42 PM
@Description  Python version-3.10

"""


def question():
    """

    @return:
    """
    dict_1 = eval(input())
    dict_2 = eval(input())
    for k in dict_1.keys():
    	#better than under way.
    	#dict_2[k] += dict_1.get(k,0)
        if k in dict_2.keys():
            dict_2[k] += dict_1[k]
    dict_1.update(dict_2)
    dict_1 = dict(sorted(dict_1.items(), key=lambda x: x[0] if isinstance(x[0],int) else ord(x[0])))
    print(f"{dict_1}".replace(' ', '').replace('\'', '"'))


if __name__ == '__main__':
    question()

输出

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

你可能感兴趣的:(Python,python,加密)