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)

知识点补充:

1、如何正确读写文件

2、如何对数据进行排序

3、字典数据类型的运用

4、正则表达式的运用

到此这篇关于python统计文章中单词出现次数实例的文章就介绍到这了,更多相关python统计单词出现次数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

python中统计各个单词出现的次数使用方法_python统计文章中单词出现次数实例相关推荐

  1. python random库生成伯努利随机数的方法_Python使用random模块生成随机数操作实例详解...

    本文实例讲述了Python使用random模块生成随机数操作.分享给大家供大家参考,具体如下: 今天在用Python编写一个小程序时,要用到随机数,于是就在网上查了一下关于Python生成各种随机数的 ...

  2. 用python写个根据提示猜词语简单的游戏_python实现简单猜单词游戏

    本文实例为大家分享了python实现猜单词游戏的具体代码,供大家参考,具体内容如下 电脑根据单词列表随机生成一个单词,打印出这个单词长度个 ' _ ' ,玩家随机输入一个这个单词可能包含的英文字母,如 ...

  3. python类定义中、对象字符串的特殊方法是_python中自定义类对象json字符串化的方法_python json转字符串、...

    python中自定义类对象json字符串化的方法 1. 用 json 或者simplejson 就可以 2.定义转换函数: def convert_to_builtin_type(obj): prin ...

  4. c#中.clear()作用_清单 .Clear()方法以及C#中的示例

    c#中.clear()作用 C#List <T> .Clear()方法 (C# List<T>.Clear() Method) List<T>.Clear() me ...

  5. python threading模块的方法_Python THREADING模块中的JOIN()方法深入理解

    看了oschina上的两个代码,受益匪浅.其中对join()方法不理解,看python官网文档的介绍: join([timeout]):等待直到进程结束.这将阻塞正在调用的线程,直到被调用join() ...

  6. python函数 模块先加载到内存后执行_Python从内存中使用编译后的模块

    在Windows编程的时候,有些时候,我们经常会要使用一些非常规的方法,比如说从内存中加载DLL,然后使用DLL中的函数.于是就思索在用Python的时候是否能够将几个编译好的Pyc合并成一个,然后使 ...

  7. Java获取单词的首字母的方法_java – 从句子中的每个单词中提取第一个字母

    我已经开发了一个语音到文本程序,用户可以说一个简短的句子,然后将其插入文本框. 如何提取每个单词的首字母然后将其插入文本字段? 例如,如果用户说:"Hello World".我想在 ...

  8. python类的内置方法_python面向对象之类中的内置方法

    __setattr__,__delattr__,__getattr__,__getattribute__以及标准类型的二次加工 __setattr__,__delattr__,__getattr__的 ...

  9. python getattribute方法_Python:避免getattribute中的无限循环__

    为了避免无限循环,需要仔细编写方法__getattribute__.例如:class A: def __init__(self): self.x = 100 def __getattribute__( ...

最新文章

  1. DNA复制体结构和工作原理首次被揭示
  2. Python开发环境Wing IDE如何设置Python路径
  3. 玩转python轻松过二级 百度网盘,玩转Python轻松过二级
  4. hive大数据倾斜总结
  5. 壹佰文章总结| 关于ASP.NETCore的分享之路
  6. php sorcket_PHP: Sockets - Manual
  7. iOS 14代码泄露iPhone 12系列细节:有且仅有两款配备ToF 3D镜头
  8. mysql基于mysql-proxy和amoeba的读写分离以及tcpdump+wireshark工具验证(上)
  9. 离散方程式matlab,matlab离散型数据拟合方程,求系数,哪个大神能说说方法
  10. 学习小实例--滚动条
  11. easyui 动态添加标签页,总结
  12. CarSim仿真快速入门(十四)—CarSim-Simulink联合仿真
  13. 关于使用中如何实现数据的筛选的问题
  14. python对接蚂蚁验证码平台
  15. 内存溢出(out of memory)是内存不足吗?Outofmemory error怎么解决?
  16. C++程序设计同步实践宝典——前言
  17. OpenCV打开摄像头并显示图像(C++、Python)
  18. Uinty3d 工程导入 Android Studio
  19. bibitem排版引用顺序不正确,最后一页两栏平衡
  20. 【PAT乙级】1009 说反话

热门文章

  1. 鸿蒙dnf为什么一直连接服务器,DNF组队崩溃内存占用高怎么办 附带详细解决办法...
  2. Wordpress开发 - 获取作者头像的两种方法
  3. 网站快照回档如何处理
  4. 买了两套无线键鼠套装
  5. uniapp实现微信小程序全局【发送给朋友】、【分享到朋友圈】、【复制链接】
  6. 穷人冲冲冲:宝妈如何赚钱?16种方法
  7. 万豪国际大中华区第500家酒店开业
  8. activiti实现节点前后跳转(兼容并行分支/包容分支)
  9. NX二次开发-算法篇-创建最小包容盒
  10. DotC United Group赵漪涛:如何通过算法提升巨头蚕食剩下30%的广告市场?