如何有效地交叉检查字典

How to cross check dictionaries efficiently

我是编码新手,我希望编写一个函数 (max_dict),该函数采用两个字典并创建第三个字典,该字典仅包含键和值,其中键包含在两个字典中。下面的代码有效,但我想要一种更有效的方法!谢谢!

def max_dict(dict1, dict2):
    new_dict = {}
    for key, value in dict1.items():
        for k, v in dict2.items():
            if key == k:
                new_dict[key] = value
    return new_dict

像这样的东西应该可以工作

new_dict = {x:dict1[x] for x in dict1 if x in dict2}

这个怎么样?

def max_dict(dict1, dict2):
    new_dict = {}
    for key in dict1:
        if (key in dict2 and dict1[key] == dict2[key]):
            new_dict[key]=dict1[key]
    return new_dict