我有一本包含日期和词频序列的字典,如下所示:
{
'Wed Aug 09': [('夏', 49), ('日本', 48), ('海', 39), ('', 33), ('日', 28), ('写真', 25), ('まし', 24), ('', 24), ('️', 23), (' ソフトクリーム', 22)],
'Thu Aug 10': [('夏', 1010), ('日本', 672), ('暑い', 501), ('海', 379), ('型', 253), ('日', 242), ('人', 223), ('まし', 209), ('い い', 159), ('雨', 149)]
}在所有这些术语中,我有一个关键字列表,我想总结一下所有的数据:
key_words = ["夏", "海", "暑い", "雨", "秋", "寒い", "台風", "冬"]我希望我的输出看起来像:
{
'Wed Aug 09': [('夏', 49), ('海', 39),('暑い', 34), ('雨', 26), ('秋', 23), ('寒い', 15), ('台風', 12), ('冬', 9) ],
# ...
}这基本上是从带有元组列表的字典中提取关键字。
我的提取代码如下所示:
result = dict()
for key, value in date_words.items():
if key_words in date_words[value]:
result[key] = value
print(result)但它会返回一个空的小弟弟。有人能帮帮我吗?
发布于 2017-09-21 06:51:31
您正在询问是否存在一个具有相同字符串的list对象。没有,这里有每个元素的元组。您将需要测试该交叉路口。
我会用key_words来代替:
key_words = {"夏", "海", "暑い", "雨", "秋", "寒い", "台風", "冬"} # use set([....]) in Python 2并使用列表理解来提取所有匹配的元组:
result = {}
for key, value in date_words.items():
result[key] = [(k, v) for k, v in value if k in key_words]这可以进一步合并成字典的理解:
result = {key: [(k, v) for k, v in value if k in key_words]
for key, value in date_words.items()}https://stackoverflow.com/questions/46337149
复制相似问题