首页 > 解决方案 > 如何找到包含相同值或值超集的键值对

问题描述

d = {1: ['a'], 3: ['b','c'], 4: ['a','d'], 5: ['b','c','d']},这只是一个例子。我有一个这样的键值对的大文件。我的问题是如何找到多个键值对中存在的值。我想获取那个键值对。对于此示例,与 key 对应的第一个值1'a'并且它存在于 中4:['a','d'],因此我想获取4: ['a', 'd']对。

请注意,我有一本包含数百万条目的庞大字典。

标签: pythonkey-value

解决方案


使用列表理解,您可以实现这一点


def findData(d, findvalue):
     return [(i,v) for i , v in d.items() if findvalue in v ]

text = 'a'
print(findData(d,text))

推荐阅读