Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用python在词典中搜索列表_Python - Fatal编程技术网

用python在词典中搜索列表

用python在词典中搜索列表,python,Python,我有一个用户字典,其中包含两个列表作为每个键的值。 我有一个ItemList字典,其中包含列表作为值 dict\u用户={ 'User1':[['item10','item3','item6'],['item1','item7','item8'], 'User2':[['item10','item6','item2'],['item2','item10','item5'], 'User3':[['item2','item9','item3'],['item8','item3','item1']]

我有一个用户字典,其中包含两个列表作为每个键的值。 我有一个ItemList字典,其中包含列表作为值

dict\u用户={
'User1':[['item10','item3','item6'],['item1','item7','item8'],
'User2':[['item10','item6','item2'],['item2','item10','item5'],
'User3':[['item2','item9','item3'],['item8','item3','item1']]
}
口述项目={
'itemlist1':['item10','item3','item1','item7','item8','item4'],
'itemlist2':['item2','item5','item2','item3','item4','item6'],
'itemlist3':['item9','item6','item1','item7','item2','item4']
}
现在,我想为dict_users中的每个用户找到一个dict_items中的itemlist,其中包含(至少)第一个列表中的2个项目和第二个列表中的2个项目,它们是dict_users中用户的值。 因此,在本例中,User1将与itemlist1配对。如果这是一本新的字典,那就太好了,就像这样:

dict\u对={
“User1”:“itemlist1”
}
等
谢谢大家!

这需要:

dict_pairs={}
对于用户,在dict_users.items()中列出:
对于itemlist,dict_items.items()中的项:
项目=设置(项目)
如果列表中的lst的所有(len(items&set(lst))>=2:
dict_pairs[用户]=项目列表
打破
对于每个用户,我们遍历项目列表。然后,我们检查用户的子列表与项目列表的交集是否大于(或等于)2。如果是这样的话,我们把它加到最后一句话中,然后继续

对于您的示例,这将给出:

dict_pairs = {
'User1': 'itemlist1',
'User2': 'itemlist2'
}