有没有比计算它们的交集更容易/更快的方法来确定两个字典是否不相交?
对于我找到的路口 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)
