我有一个任务,我必须创建一个包含函数列表的模块,其中一个字符串被写入文件。我坚持的部分是我必须花费一个单词出现在输入字符串中的次数,并将其添加到字典中。字典的关键字是单词,值将是单词出现在字符串中的次数。
def word_freq_dict(): # function to count the amount of times a word is in the input string
file = open("data_file.txt", 'r')
readFile = file.read() #reads file
words = readFile.split() #splits string into words, puts each word as an element in a list
其他功能起作用,我确定了。到目前为止我所做的就是把它们放到一个列表中。我想总结每个单词在列表中出现的次数,并将其添加到字典中,其中单词为关键字,并显示为值的次数。此功能不会返回任何内容。
答案 0 :(得分:0)
有一种非常简单的方法可以做到这一点:
word_count = {}
for word in words:
word_count[word] = word_count.get(word,0) + 1
通过在dict.get()函数中使用0作为默认值,当第一个出现时,它返回0。如果单词已经在字典中,则返回键的当前值。然后你只需在每次迭代中加1。