美文网首页
获取一篇文章中出现最多的单词

获取一篇文章中出现最多的单词

作者: 冬月廿拾 | 来源:发表于2019-10-10 20:05 被阅读0次

    代码片段来源:https://github.com/Show-Me-the-Code/python/tree/master/A1014280203/4

    精彩代码片段

        for word in complete_text.lower().split():
            records[word] = records.get(word, 0) + 1
    

    题目

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

    原思路:
    • 将文件中的转义符\n,\t替换成空格
    • 将文件内容以空格切成数组然后转为元组(去重) tuple_a
    • 再定义一个数组list_a 内容=文件内容以空格切隔
    • 建一个二维数组list_b,保存单词与对应的数量
    • 在一个white中(终止条件lista长度=0)用for遍历tuple_a,用for判断在list_a中是否存在,如果存在:在list_b中新增/修改 数组(单词,出现的次数),并使用下标将list_a对应的单词删除,跳出循环
    问题点:

    最后一步使用两个for稍微麻烦,二维数组list_b不好排序

    新代码的精彩点:代码精简,且易于理解
    #complete_text为文章内容('t 、're之类的缩写已转换)
    #records为字典
        for word in complete_text.lower().split():
            records[word] = records.get(word, 0) + 1
    
    • 采取直接便利文章的方法,然后使用字典来记录单词及对应的次数
    • dict[key] = value ,字典的key不能重复,每次执行可以认为是修改
    • get()方法在字典中没有key时返回value=0,有则返回真实的value,用于计算单词出现的次数

    相关文章

      网友评论

          本文标题:获取一篇文章中出现最多的单词

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