Skip to main content
 首页 » 编程设计

python之检查两个字典是否不相交

2025年05月04日9softidea

有没有比计算它们的交集更容易/更快的方法来确定两个字典是否不相交?

对于我找到的路口 this answer ,所以不相交测试看起来像这样:

def dicts_disjoint(a, b): 
    keys_a = set(a.keys()) 
    keys_b = set(b.keys()) 
    intersection = keys_a & keys_b 
    return not len(intersection) 

但是我认为这是低效的,因为它总是计算整个路口(没有短路退出)。

有什么更好的主意吗?

请您参考如下方法:

不要转换为集合; dict_keys 对象已经支持 isdisjoint。

d1.keys().isdisjoint(d2)