python - 如何找到包含相同值或值超集的键值对
问题描述
d = {1: ['a'], 3: ['b','c'], 4: ['a','d'], 5: ['b','c','d']}
,这只是一个例子。我有一个这样的键值对的大文件。我的问题是如何找到多个键值对中存在的值。我想获取那个键值对。对于此示例,与 key 对应的第一个值1
是'a'
并且它存在于 中4:['a','d']
,因此我想获取4: ['a', 'd']
对。
请注意,我有一本包含数百万条目的庞大字典。
解决方案
使用列表理解,您可以实现这一点
def findData(d, findvalue):
return [(i,v) for i , v in d.items() if findvalue in v ]
text = 'a'
print(findData(d,text))
推荐阅读
- parallel-processing - 如何编译 Fortran 代码以在 OpenMPI 中使用 gprof 进行分析?
- python - 如何仅匹配Python中以下值的计算总和
- amazon-web-services - 如何使用 aws s3api 将本地目录与亚马逊存储同步?
- tensorflow - 使用 Estimator 进行分布式训练时,Tensorflow 参数服务器挂起
- django - 如何在另一个应用程序中调用视图
- git - 如何在 Windows 10 上使用 git 更改相同格式的多个文件名?
- php - Laravel - 将`->map()`与`->firstOrFail()`结合使用的方法?
- c++ - 一个头文件可以包含在多个源文件中,没有重复保护
- javascript - 使用 Highcharts 时如何在堆积柱形图/条形图的特定列上设置亮度效果?
- java - Idea Intellij:Maven 自动生成的工件与手动创建的工件 - 只有自动工作(截图)