【发布时间】:2019-07-16 12:17:14
【问题描述】:
我有一个字典列表:
[{
'doc1': {'hyundai': 12,
'mercedez': 34,
'bugatti': 2,
'honda': 19},
'doc2': {'tennis': 20,
'wimbledon': 11,
'nadal': 57},
'doc3':{'world': ,
'politics': 8,
'obama': 7,
'america': 4,
'summit': 14,
'budget': 17,
'germany': 22
}}]
和单词列表l= ['trump','mercedez','wimbledon','nadal','hyundai','tennis']
我只想将列表元素与字典的键匹配,并获得其值的总和,并与最高总和一起排序,如果没有元素匹配,则对应键的总和将为零。
预期为,
new_dict={'doc2':88,'doc1':46,'doc3'=0}
【问题讨论】:
-
如果你的
new_list只包含一个字典,为什么它甚至是一个列表?当您的输入没有时,为什么它有doc3的条目?您希望对列表或包含的字典进行排序吗? -
@MisterMiyagi
doc3的值为 0,因为没有列表元素与doc3的键匹配。因此,总和为零。是的,我想要对字典进行排序。希望你明白了 :) -
我不明白你为什么会有一本字典的列表?
-
最终的字典应该包含键作为文档,值将是所有匹配值的总和,最后我希望它根据最高总和进行排序。@
-
这听起来一点也不坏。我已经写好了答案,但我想看看你的尝试
标签: python arrays python-3.x dictionary