首頁 >後端開發 >Python教學 >python統計單字出現次數

python統計單字出現次數

angryTom
angryTom原創
2020-02-13 11:09:129991瀏覽

python統計單字出現次數

python統計單字出現次數

做單字詞頻統計,用字典無疑是最適合的資料類型,單字作為字典的key, 單字出現的次數作為字典的value,很方便地就記錄好了每個單字的頻率,字典很像我們的電話本,每個名字關聯一個電話號碼。

下面是具體的實作程式碼,實作了從importthis.txt檔案讀取單字,並統計出現次數最多的5個單字。

# -*- coding:utf-8 -*-
import io
import re

class Counter:
    def __init__(self, path):
        """
        :param path: 文件路径
        """
        self.mapping = dict()
        with io.open(path, encoding="utf-8") as f:
            data = f.read()
            words = [s.lower() for s in re.findall("\w+", data)]
            for word in words:
                self.mapping[word] = self.mapping.get(word, 0) + 1

    def most_common(self, n):
        assert n > 0, "n should be large than 0"
        return sorted(self.mapping.items(), key=lambda item: item[1], reverse=True)[:n]

if __name__ == '__main__':
    most_common_5 = Counter("importthis.txt").most_common(5)
    for item in most_common_5:
        print(item)

執行效果:

('is', 10)
('better', 8)
('than', 8)
('the', 6)
('to', 5)

更多python教程,推薦學習:Python影片教學

以上是python統計單字出現次數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn