美文网首页
python练习册-第0004题

python练习册-第0004题

作者: RJzz | 来源:发表于2018-01-14 20:42 被阅读8次

    Description

    任一个英文的纯文本文件,统计其中的单词出现的个数。

    Analysis

    查阅了资料后发现python有个collections的模块可以对单词进行统计,主要是用到了Counter这个类

    Solution

    # -*- coding: utf-8 -*-
    from collections import Counter
    import re
    
    def cal():
        with open('./test.txt', 'r', encoding='utf-8') as f:
            data = f.read()
        data = data.lower()
        # 使用正则表达式子去掉式子中的\n字符
        datalist = re.split(r'[\s\n]+', data)
        # 将list用Counter初始化
        return Counter(datalist).most_common()
    
    if __name__ == '__main__':
        dict = cal()
        # 返回的列表中的每个元素都是一个字典,第一个元素是单词,第二个元素是出现的次数
        for i in range(len(dict)):
            print("%15s ----->%3s" %(dict[i][0], dict[i][1]))
    

    相关文章

      网友评论

          本文标题:python练习册-第0004题

          本文链接:https://www.haomeiwen.com/subject/kwrloxtx.html