python统计单词个数算法_python 统计单词个数和频次
开始学习python,习题需要统计单词个数和频次。百度找到的代码好像都有问题。自己写了一个,调试通过。
环境:python: 3.9.1 64bit ; pycharm: 2020.2 电脑 win10 64
思路如下:
1. 打开文件,将所有字符读入list:s
2. 使用正则表达式,以非英文字符为间隔符,切片,生成一个以单词为基本元素的list
3.由于原先非字母可能连续,故生成的list可能存在空单词,所以需要去除空串
4.全部转成小写,并排序。
5. 将单词顺次存入dict,如果单词存在,则个数加一,如果不存在,则将此单词存入dict,个数设置为1
6. 输出
代码和注释如下:
import re #re模块主要功能是通过正则表达式是用来匹配处理字符串
def main(fileName):
try:
inf= open(fileName,'r')
s = inf.read()
words =re.split(r'[^a-zA-Z]',s) #以非英文字符为间隔生成list
realWords0= list(filter(None,words)) #去除空串
realWords1 =[]
for word in realWords0:
realWords1.append(word.lower()) #均转换为小写
realWords1.sort()
print("word NO: ",len(realWords1))
dict1 =dict()
for word in realWords1:
if(word in dict1): dict1[word] =dict1[word]+1
else: dict1[word]=1
for item in dict1.items():
#print(item)
print(item[0],item[1])
except IOError:
exit("That file couldn't be opened.")
return 1
main("word.txt")
python统计单词个数算法_python 统计单词个数和频次相关推荐
- 用python解决数据结构与算法_python中各种数据结构与算法的解决技巧
四.如何统计序列中元素的频度1.某随机序列[12,5,6,4,6,5,5,7]中,找到出现次数最高的3个元素,它们出现次数是多少? 解决方案1:将序列转换为字典{元素:频度},根据字典中的值排序> ...
- python统计单词个数算法_统计一篇英文文章单词个数,取出出现频次前10的单词(Python实现)...
题目: 用python实现统计一篇英文文章内每个单词的出现频率,并返回出现频率最高的前10个单词及其出现次数. 常规解法 怎么判定单词? 1 不是字母的特殊字符作为分隔符分割字符串 (避免特殊字符的处 ...
- python统计汉字个数是_python统计中文字符数量的两种方法
方法一: def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数''' count_en = count_dg = count_sp = count_zh = c ...
- python查看列表有多少元素_python 统计列表中元素的数量
一.统计列表中不同元素的个数 这个需求是统计列表中不同元素有几个,由于列表是允许存在重复元素的,但是集合却不允许存在重复元素,所以可以将list转换为set,然后求长度. list=[1,2,1,2, ...
- python排序统计重复的数_Python统计列表(List)中的重复项出现的次数并进行排序...
学习Python的过程中,你会遇到各种各样的坑,不要觉得难,当你去踩过就会觉得很简单了! 正文: 题目概述 对于一个列表,比如List = [1,2,3,4,5,3,2,1,4,5,6,4,2,3,4 ...
- python如何统计出现的次数_Python统计日志中每个IP出现次数的方法
本文实例讲述了Python统计日志中每个IP出现次数的方法.分享给大家供大家参考.具体如下: 这脚本可用于多种日志类型,本人测试MDaemon的all日志文件大小1.23G左右,分析用时2~3分钟 代 ...
- python快递分拣小程序_python英语单词测试小程序代码实例
这篇文章主要简介了python英语单词测试小程序代码实例,文中通过示例代码简介的非常具体,对大家的学习或者工作具有一定的参考学习网上卖,需要的朋友可以学习下 爬取了扇贝英语网,并制作了一个英语单词测试 ...
- python 多条件 选择 算法_python部署python算法 - 快速寻找满足条件的两个数
题目前提是一定存在这样两个数 解法一就不写了...一般想不到吧 一开始想到的是解法二最后的用hash表 (其实是想到创建一个跟target一样大的数组啦..存在就写入index,但是要全部找出,那得二 ...
- python乘法表代码注释_Python统计python文件中代码,注释及空白对应的行数示例【测试可用】...
本文实例讲述了Python实现统计python文件中代码,注释及空白对应的行数.分享给大家供大家参考,具体如下: 其实代码和空白行很好统计,难点是注释行 python中的注释分为以#开头的单行注释 或 ...
最新文章
- R语言merge函数全连接dataframe数据(Full (outer) join)、merge函数进行全连接必须将参数all设置为true(all=TRUE)、默认merge函数通过公共列名合并数
- 解决IOS滑动页面fixed浮动问题
- React系列---Webpack环境搭建(二)不同环境不同配置
- WildFly 10 CR 2发布– Java EE 7,Java 8,Hibernate 5,JavaScript支持热重载
- 第四章 企业项目开发--切分配置文件
- Atcoder 077E - guruguru(线段树+dp)
- 【C语言】矩阵的最大值(指针专题)
- Linux AIO的新归宿:io_uring(介绍,系统调用)
- 【洛谷】【堆+贪心】P1484 种树
- IIS错误信息--另一个程序正在使用此文件,进程无法访问!
- http status 状态码汇总
- 微信小程序用RSA加密和java后台对接。
- Vue TodoList案例
- 2013Esri全球用户大会QA之GIS发展状况和趋势
- 打开Word时会出现错误的解决办法
- qrc文件编译到可执行文件exe
- 简明C语言教程(七)scanf 用法
- Linux之shell脚本编程、多命令、脚本、bc计算器、反引号、if语句、for语句
- 柠檬班python自动化百度云_柠檬班python
- c语言大地坐标系和空间直角坐标系的转换,空间直角坐标系与大地坐标系转换程序.doc...
热门文章
- 微信小程序订单生成支付二维码接口 code
- Oracle提取中文字符串拼音首字母函数
- 显示计算机名在桌面壁纸,Windows桌面壁纸自动显示计算机详细信息小工具–BgInfo...
- 工程伦理--4.2 划界法
- 基于tkinter制作的一个策略小游戏
- 这篇寒门博士论文致谢火了:回首望过去,可怜无数山...
- 网络编程学习笔记-套接字编程-socket
- 2021考研——浙江大学控制科学与工程专业考研经验贴(845自动控制原理)
- APP:校园网登录app—中小南—源码简析
- 华为数据管理与分析课程