先记一次尴尬的学习过程

在家诚大佬的极力鼓动下,我相信了成为Python全栈数据工程师并不太难,并决定跟着某全栈工程的课本深入了解下数据工程的全套流程。 然而第一个实例(hello,world除外)就出现了问题,2017出版Python书竟然用的是Python2.7的版本。随后决定用python3重新实现一下书本内容。 此实例包括后续版本的实例都会在此分享,欢迎大家一起交流学习。

背景

对于一本书籍或者刊物,了解其不同字数及其出现频率对于了解一本书的主要内容和分类都是非常有用的。并且在后续学习自然语言后,还可以通过其他方法统计词数和频率,因而此基础程序还是值得实现一下的。

算法原理

对于统计出现汉字的种类和频率,可以通过Python的字典类型进行实现,具体字典的使用方法见菜鸟教程Python3字典
这里用到了字典基本的建立,value调用,键值对增加,value修改,以及items()函数。

编程实现

流程:文件遍历-除去空白——判断字典中有无该字符——有则Value加1,无则新建为1——按Value排序并返回

具体实现代码如下:

#统计txt文件中的字符频率
def countwords(txt):stat = {}#建立字典存储存储字符和对应频率for line in txt:line = line.strip()if len(line) == 0:continuefor i in range(len(line)):#判断有无该字符的键if(line[i] in stat):stat[line[i]]+=1else:stat[line[i]]=1result=sorted(stat.items(),key = lambda x:x[1],reverse = True)#按value大小排序return result
xyj = open('xyj.txt' ,'r',encoding = 'utf-8')#读文件
r=countwords(xyj)#调用函数
xyj.close

Python的字典类型实现统计文件字符个数和出现次数相关推荐

  1. 统计文件字符个数 java_如何统计个文件中的字符个数

    一个朋友问到了统计文件字符数的问题.就找了两个. import java.io.*; public class Execute_char { final int MAX = 9999; int len ...

  2. 第四章课后习题-用Python实现羊车门问题,最大公约数计算,猜字游戏,统计不同字符个数。

    目录 前言 4.1 猜数游戏 random库中的两个常用函数: eval()函数 4.2 统计不同字符个数 两个内置的字符串处理函数: chr(x) ord(x) 4.3 最大公约数的计算 4.5 猜 ...

  3. python中字典类型中的item是什么-Python中的基本数据类型之字典类型

    字典类型是键值对构成的数据类型,也就是一个键对应一个值,对于存储某些一一对应数据十分的方便 字典的创建 #在Python中字典类型是dict类型 a = {"name":" ...

  4. python中字典类型中的item是什么-python中 字典类型内置方法

    python中 字典类型内置方法 一.字典(dict) ​ 1·. 存多个值,但是每一个值都有一个key与之对应.列如存在值有姓名:jiayi.年龄:18.身高:173 ​ 2.定义方式 ​ 在{}内 ...

  5. linux字符串排序文件,Linux awk+uniq+sort 统计文件中某字符串出现次数并排序

    https://blog.csdn.net/qq_28766327/article/details/78069989 在服务器开发中,我们经常会写入大量的日志文件.有时候我们需要对这些日志文件进行统计 ...

  6. PTA平台,jmu-python-字符串-统计不同字符个数

    对一行字符串统计不同字符个数,分别统计并输出中英文字符.空格.数字和其他字符个数. 输入格式: 一行字符串 输出格式: 依次输出中英文字符.空格.数字.和其他字符个数. 注意:中文数字字符,如七,算作 ...

  7. Mapreduce程序 统计文件中每个单词出现次数

    mapreduce程序 统计文件中每个单词出现次数 调用MapReduce对文件中各个单词出现次数进行统计 一.安装环境 二.准备工作 1.创建Hadoop账户 2.更新 apt 3.安装vim 4. ...

  8. 统计不同字符个数。用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符、数字、空格和其他字符的个数

    统计不同字符个数.用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符.数字.空格和其他字符的个数 s = input("请输入一行字符:") letter = 0 #字母 ...

  9. c语言习题-统计指定字符个数

    c语言习题-统计指定字符个数 要求 程序 运行结果 c语言习题-统计指定字符个数 要求 请编写函数fun,它的功能是:求出str所指字符串中指定字符的个数,并返回此值. 程序 #include < ...

最新文章

  1. 记录一次java.lang.OutOfMemoryError: PermGen space异常
  2. BugkuCTF web基础$_GET
  3. 嵌入式Linux安装Python环境,linux环境下安装python 3
  4. 《极客学院 --NSAttributedString 使用详解-4-UITextKit 简介》学习笔记(待处理)...
  5. Unity3d设置成中文版
  6. 2022年安全员-A证考试模拟100题模拟考试平台操作
  7. 计算机无法装补丁,win7系统安装不了SP1补丁包怎么办 win7电脑SP1补丁包安装失败的解决方法...
  8. SPSS学习笔记(一)
  9. 关于线程耗尽导致请求超时系统假死的思考
  10. 51单片机烧录程序异常: 正在检测目标单片机…
  11. html5均线图源码,通达信相当好的天机均线主图源码
  12. 无线射频专题《协议类,IEEE 802.11/802.11b/802.11a/802.11g/802.11n/802.11ac标准简介》
  13. android studio 页面布局
  14. 全国青少年编程等级考试python一级真题2022年3月(含题库答题软件账号)
  15. zigbee入网过程深入解析(Ubiqua抓包)
  16. 宝塔docker安装Halo
  17. 高阻抗探头TA375测CAN和FlexRay
  18. 面经--前程无忧(前锦网络)
  19. MATLAB命令大全和矩阵操作大全
  20. Win11 22H2使用TranslucentTB让任务栏透明

热门文章

  1. java实现的三阶贝塞尔曲线_n 阶贝塞尔曲线计算公式实现
  2. 持欠条讨薪无须先劳动仲裁
  3. AutoCAD Civil 3D-部件编辑器制作参数化多级边坡
  4. 三分钟搭建开源堡垒机JumpServer
  5. 电子邮件礼仪五大神器 让工作大佬们回复你的邮件 How to get a busy person to respond to your email
  6. 二、STS开发工具安装 + 创建WEB工程
  7. 2GHz的德州仪器OMAP4460双核处理器
  8. Pandaboard OMAP4460用linaro android源码启动
  9. Hive3.0.0自定义UDF函数获取每月结合国家法定节假日工作日数实现
  10. c语言检测状态是否变化,C语言数组状态研究