Python:使用相同的键比较两个词典,如果另一个词典值大于0,则将键标识为0作为值

时间:2018-02-26 08:01:33

标签: python dictionary

我有两个具有相同键的字典,但值是不同的整数。它们看起来都像:

Dict 1        Dict2
SEQ|1|,0      SEQ|1|,4
SEQ|2|,9      SEQ|2|,7

如果另一个Dict中的相同键值的int大于1(或者不是0),我需要识别那些键值为0。

所以在这种情况下我想报告

SEQ|1|,0 from Dict1

感谢。

注意:dicts具有完全相同的密钥。

2 个答案:

答案 0 :(得分:1)

你可以尝试类似的东西:

for key in dict1:
    if (dict1[key] == 0) != (dict2[key] == 0):
        print(key)

只有两者具有完全相同的键

时才会起作用

答案 1 :(得分:1)

小公主建议你使用这种单行样式代码来检索列表中的所需键:

ListResult = [a for (a,b) in Dict1.items() if ((b == 0) and Dict2[a] > 0)]