Python学习心得(一):词频统计,自顶向下设计
今天编的这个小程序是哈姆雷特中的词频统计,即统计哈姆雷特中各个词语出现的频率。我第一次尝试了使用自顶向下的设计方法和自下向上的执行方法。期间出现了很多错误,在此记录,以免日后再犯。
编程前截取网上Hamlet其中的一段,要注意的是:保存为txt类型时,编码方式选择'utf-8'。如图:
接下来分析整个编程的题目,并列出步骤:
第一步,打开文件并读取,将每个单词都分割开。
第二步,考虑到大小写的问题,将所有的字母都换为小写。
第三步,统计每个单词出现的频率,并高至低输出。
由此,主函数main()为:
split()函数将文件中的单词读取并分割开来,得到splitwords的列表,swapcase()函数将全部单词转换为小写模式,得到新的列表。countTimes()函数统计每个单词出现的频率,以字典的形式输出。outputs()函数和sorts()函数排序输出。
代码如下:
调试程序时发现了很多错误:
1.对象的使用方法上:如s1.replace后并没有将更新的字符串在赋给s1。return ls.sort直接返回,造成返回的结果为空值。应返回ls,而不是返回一个方法过程。
2.循环时,总是少加range。
3.定义的split()函数不能以'\n‘分割,需以空格分割。
程序结果如下,没有格式输出。
日后还要多加练习。
转载于:https://www.cnblogs.com/pengu/p/9564411.html
Python学习心得(一):词频统计,自顶向下设计相关推荐
- python学习笔记__词频统计
统计英语6级试题中所有单词的词频,并返回一个如下样式的字典 {'and':100,'abandon':5} 英语6级试题的文件路径./artical.txt Tip: 读取文件的方法 def get_ ...
- 使用Python+NLTK实现英文单词词频统计
使用Python+NLTK实现英文单词词频统计 使用PythonNLTK实现英文单词词频统计 应用场景 Fork Me 参考运行环境 流程步骤图 详细步骤 读取文件 过滤特殊符号以及还原常见缩写单词 ...
- python学习笔记(15)循环设计
python学习笔记(15)循环设计 原链:http://www.cnblogs.com/vamei/archive/2012/07/09/2582435.html 注意:zip()在python2 ...
- 大一上学期Python学习心得体会
Python学习心得体会 经过了大一上学期的Python学习,我已经逐渐摸索到了Python的一些学习方法,学习Python,就像学习其他编程语言或者是学习一门外语一样 ,我们应该从Python的基础 ...
- Python中文分词及词频统计
Python中文分词及词频统计 中文分词 中文分词(Chinese Word Segmentation),将中文语句切割成单独的词组.英文使用空格来分开每个单词的,而中文单独一个汉字跟词有时候完全不是 ...
- python学习心得(一)
python学习心得 人生苦短,我用python.看到python有那么多开放的库,短短几行代码就能搞定一个项目,有点面向对象的经验确实很容易学习. 1. 语法基础 2. 项目练习 3. 项目过程中的 ...
- python红楼梦人物词频统计_用 Python 分析《红楼梦》
1 前言 两个月以来,我通过互联网自学了一些文本处理的知识,用自然语言处理和机器学习算法对<红楼梦>进行了一些分析.这个过程中我找到了一些有趣的发现,所以我想写一篇文章,既㲌与大家分享和讨 ...
- python红楼梦人物词频统计_通过数据挖掘能分析《红楼梦》各回的真伪吗?
可以的.小智最近就尝试通过用机器学习的方法,分析了一下红楼梦后四十回的真伪. 以下内容引自小智的微信公众号,转载需申请授权. ------------------------------------- ...
- Python实例分析——文本词频统计
基于中国大学mooc网嵩天老师的<Python语言程序设计>课程实例 文章目录 一.数字文本 pi 二.英文文本 *Hamlet* 三.中文文本<三国演义> 一.数字文本 pi ...
最新文章
- centos7使用yum安装jdk并配置jdkhome
- [转]Oracle 初始化参数之cursor_sharing
- dede 验证码不显示 vdimgck.php,Dede后台验证码不显示解决方法详解(dedecms 5.7)
- IOS基础之segue使用,
- 输出毫秒_自学单片机第十三篇上:单点输出
- python开发之路目录
- 数据库工作笔记012---mysql触发器trigger 实例详解_保证数据库完整性还是不错的
- jmeter性能测试_JMeter性能测试,接口测试,最全的JMeter资料,共计3.16G
- PHP7中异常与错误处理与之前版本对比
- 计算机基础知识复习(一)
- 退货地址导出(拼多多)
- 前端字体图标的下载与使用
- 罗振宇2021“时间的朋友·长大以后”跨年演讲全文无删减整理,核心观点、大纲提炼
- ubuntu测试键盘工具_Lubuntu安装屏幕键盘onboard,使触摸屏可以登录和输入
- WebSphere管理控制台端口号如何查看
- VMware创建共享文件夹并实现文件传输(Windows主机,Ubuntu虚拟机)
- 《大学“电路分析基础”课程实验合集.实验五》丨线性有源二端网络等效电路的研究
- CSS系列之修改滚动条的样式
- 怎么快速判断互质数?
- Java中String中split方法