私はテキストファイルの各単語の頻度を数えるPythonコードを書こうとしています。コードには一意の単語ごとに1行が表示されます。私が書いたコードは、重複する単語を表示しています。Python - ユニークな単語ごとに1行表示
import string
text = open('mary.txt','r')
textr = text.read()
for punc in string.punctuation:
textr = textr.replace(punc, "")
wordlist = textr.split()
for word in wordlist:
count = wordlist.count(word)
print word,':',count
私の現在の出力は、出力が一度だけat : 2
、be : 2
、およびby : 2
を表示する必要があります...
are : 1
around : 1
as : 1
at : 2
at : 2
away : 1
back : 1
be : 2
be : 2
because : 1
below : 1
between : 1
both : 1
but : 1
by : 2
by : 2
です。それが起こるために私のコードで何を変更すべきですか?
辞書やセットを使用します。 dictはここではもっと意味がありますが、コードセットを書き直すと作業が少なくなります。 – polku