因此,我有一个文本文件(一个段落),我需要读取该文件并创建一个字典,其中包含文件中的每个不同单词作为键,每个键的对应值将是一个整数,显示该单词在文本文件中的频率。 字典应该是什么样的示例:
{'and':2, 'all':1, 'be':1, 'is':3}
等
到目前为止我有这个
def create_word_frequency_dictionary () :
filename = 'dictionary.txt'
infile = open(filename, 'r')
line = infile.readline()
my_dictionary = {}
frequency = 0
while line != '' :
row = line.lower()
word_list = row.split()
print(word_list)
print (word_list[0])
words = word_list[0]
my_dictionary[words] = frequency+1
line = infile.readline()
infile.close()
print (my_dictionary)
create_word_frequency_dictionary()
任何帮助都将不胜感激。你知道吗
文档将^{} 模块定义为“高性能容器数据类型”。考虑使用
collections.Counter
而不是重新发明轮子。你知道吗更新: 好的,我修复了你的代码,现在它可以工作了,但计数器仍然是一个更好的选择:
如果您不使用带有计数器的python版本:
只要用
my_dictionary[words] = my_dictionary[words]+1
替换my_dictionary[words] = frequency+1
。你知道吗相关问题 更多 >
编程相关推荐