如何制作类似字典的列表? 当我在下面有一个文本时
科学家希望面部识别可以帮助他们 了解神经退行性疾病。
我想制作一份发布清单。例如,在这种情况下,每个单词出现一次,然后我认为列表应该是
[(('the'), 1),
(('scientists'), 1),
(('hope'), 1),........]
我还假设根据这些列表制作分布图。 在这种情况下还有其他更好的方法吗? 如果您详细解释,我们将非常感激。
答案 0 :(得分:1)
我不知道你为什么要在这里使用列表,字典会更容易制作和访问。更好的是,collections.Counter
可以直接从一系列单词构建:
from collections import Counter
words = ["the", "scientists", ...]
word_counter = Counter(words) # a subclass of dict
# word_list = list(word_counter.items()) # this would convert it to a list of tuples
如果您需要保留订单,可以在列表中使用索引字典:
words = ["the", "scientists", ...]
counts = []
indices = {}
for word in words:
if word in indices:
counts[word][1] += 1
else:
indices[word] = len(counts)
counts.append([word, 1])
您也可以在列表中搜索正确的索引,但速度更快。