计算许多 .txt 文件中的单词

Count words from many .txt files

我想显示每个 .txt 文件中出现的每个单词及其出现的次数。这是我的代码:

listtxt = ['a.txt','b.txt','c.txt',...]
output = open('dictionary.txt','w')
d = {}

for i in listtxt:
   with open(i,'r') as file:
     data = file.read()

     for char in '-.,;”“':
         data=data.replace(char,' ')

     data = data.lower()
     word_list = data.split()

     for word in word_list:
         d[word] = d.get(word,0) +1

     for words, count in d.items():
         output.write(('{} : {} \n'.format(words, count)))

output.close()

当我运行它时,单词和出现次数似乎分开出现,这意味着它没有检查前一个文件中的单词。我不知道为什么它不起作用。

简单的缩进错误。最后一个循环(对于单词,count in d.items())需要在第一个循环之外(for i in listtxt)。

制表符在 python 中很重要。