Show me the code_0006題

0006題:你有一個目錄,放了你一個月的日記,都是txt,為了避免分詞的問題,假設(shè)內(nèi)容都是英文,請統(tǒng)計出你認(rèn)為每篇日記最重要的詞。

解題思路:可以用剛寫的另一篇文章collections庫里面的一些方法,比如Counter()most_common()。
代碼如下:

#! /usr/bin/env python
#coding=utf-8
import os
import re
from collections import Counter

def get_filepaths(directory):
    file_paths = []
    for root, directories, files in os.walk(directory):
        for filename in files:
            filepath = os.path.join(root, filename)
            file_paths.append(filepath)
            
    return file_paths

def counter_more_words(li):
    word_dict = Counter(li)
    return [i[0] for i in word_dict.most_common()[:10]]

if __name__ == '__main__':
    for file in get_filepaths(r'C:\diaries'):
        with open(file, 'r') as f:
            word_li = re.findall("\w+", f.read())
            print " ".join(counter_more_words(word_li))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,680評論 19 139
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗。 張土汪:刷leetcod...
    土汪閱讀 12,929評論 0 33
  • 晨風(fēng)說,邋遢的姑娘又來了,你幾天沒洗頭了 旁邊的簡樂,嗑著五香瓜子,滑溜溜的腦袋像顆呆瓜似的點了三下。 他點的時候...
    師傅喊我去修心閱讀 412評論 0 0
  • 把貼吧當(dāng)做商品拿來賣已經(jīng)不是什么稀奇事了,現(xiàn)在的貼吧只有兩種,一種是興趣吧,而另一種則是被企業(yè)買斷收購的企業(yè)吧。只...
    形之上學(xué)閱讀 3,105評論 0 0
  • ?真的冷戰(zhàn)了,我們彼此不說話,我狠心的不和他說話。他也沒有來哄我。只是感覺自己的心有點痛,我真的不知道怎么辦?也許...
    淺夢時光閱讀 302評論 0 0

友情鏈接更多精彩內(nèi)容