gpt4 book ai didi

python - 如何比较两个字典以检查它们中是否存在键

转载 作者:行者123 更新时间:2023-11-28 20:04:06 25 4
gpt4 key购买 nike

我正在尝试比较两个词典并使用以下逻辑检查 dict1 中的每个键是否存在于(或不存在)dict2 或 dict3 中?有没有更好的方法来检查 dict1 中的任何键是否存在于 dict2 或 dict3 中并获取相应的值?

dict1 = {'1234': 'john','5678': 'james'};
dict2 = {'1234': 'technician'};
dict3 = {'5678': '50.23'};

shared_keys1 = set(dict1).intersection(dict2)

shared_keys2 = set(dict1).intersection(dict3)

for key in shared_keys1:
print( "Found Shared Key:{0}".format(key) )
print( "dict1['{0}']={1}".format(key,dict2[key]) )


for key in shared_keys2:
print( "Found Shared Key:{0}".format(key) )
print( "dict1['{0}']={1}".format(key,dict3[key]) )

输出:-

Found Shared Key:1234
dict1['1234']=technici
Found Shared Key:5678
dict1['5678']=50.23

最佳答案

indict 上如果字典中存在键则返回:

>>> a = {'b': 1, 'c': '2'}
>>> 'b' in a
True
>>> 'd' in a
False

所以你的代码可以写成:

dict1 = {'1234': 'john','5678': 'james'};
dict2 = {'1234': 'technician'};

for key in dict1.keys():
print key
if key in dict2:
print dict1[key] + dict2[key]
else:
print dict1[key]

如果你只想检查两者是否相等,你可以这样做:

set(dict1) == set(dict2)

关于python - 如何比较两个字典以检查它们中是否存在键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37825844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com