【发布时间】:2020-02-17 09:12:07
【问题描述】:
我想创建一个函数,它返回文本文件中特定单词的字数值。
这是我目前拥有的:
def Word_Counter(Text_File, Word):
Data = open(Text_File, 'r').read().lower()
count = Data.count(Word)
print(Word, "; ", count)
Word_Counter('Example.txt', "the")
返回:"the ; 35"
这几乎就是我想要它做的。但是,如果我想测试一个文本的一系列单词怎么办。我想要列表或字典中的单词(键)和值。不使用模块的方法是什么?
如果我用这个单词列表测试了这个函数:[时间、时间、离开、我、做、一个、谁、什么、有时]。
我想要的结果是这样的:
Word Counts = {'time': 1, 'when': 4, 'left': 0, 'I': 5, 'do': 2, 'an': 0, 'who': 1, 'what': 3, 'sometimes': 1}
我已经能够创建一个字典,对每个单词进行字数统计,如下例所示。
wordfreq = {}
for word in words.replace(',', ' ').split():
wordfreq[word] = wordfreq.setdefault(word, 0) + 1
我想做一个类似的风格,但只针对特定的词,有什么建议吗?
【问题讨论】:
-
顺便说一句,您可能应该阅读有关名称大写的 PEP-8。使用大写字母定义的函数和变量会使阅读更加混乱。
标签: python string list dictionary word-count