2
我有我從一個網址導入的txt文件中的字數排名的代碼。如何打印出單詞的等級編號?
from string import punctuation
from operator import itemgetter
N = 20
words = {}
words_gen = (word.strip(punctuation).lower() for line in open("output.txt")
for word in line.split())
for word in words_gen:
words[word] = words.get(word, 0) + 1
top_words = sorted(words.items(), key=itemgetter(1), reverse=True)[:N]
for word, frequency in top_words:
print("%s %d" % (word, frequency))
因此,從文本文件,它會返回:
hello 8
him 5
your 4
代碼沒有排名,但有什麼辦法可以打印出排名多少?
我希望它看起來像這樣。
hello 1 8
him 2 5
your 3 4
第一個數字是總體等級,第二個數字是該文本文件中單詞的頻率。我試圖像計算排名。
rank=0
if top_words:
rank+=1
但我不知道該從哪裏去。