python三国演义人物出场统计

完整代码

开源代码

统计三国演义人物高频次数

#!/usr/bin/env python
# coding=utf-8
#e10.4CalThreeKingdoms.py
import jieba
excludes = {"来到","人马","领兵","将军","却说","荆州","二人","不可","不能","如此"}
txt = open("threekingdom.txt", "rb").read()
words  = jieba.lcut(txt)
counts = {}
for word in words:if len(word) == 1:continueelif word == "诸葛亮" or word == "孔明曰":rword = "孔明"elif word == "关公" or word == "云长":rword = "关羽"elif word == "玄德" or word == "玄德曰":rword = "刘备"elif word == "孟德" or word == "丞相":rword = "曹操"else:rword = wordcounts[rword] = counts.get(rword,0) + 1
for word in excludes:del(counts[word])
items = list(counts.items())
items.sort(key=lambda x:x[1], reverse=True) 
for i in range(55):word, count = items[i]print ("{0:<10}{1:>5}".format(word, count))

代码运行:人物频率统计

threekingdom.txt  kingdom.py
kou@ubuntu:~/python/file_文本处理$ python3 kingdom.py 
Building prefix dict from the default dictionary ...
Dumping model to file cache /tmp/jieba.cache
Loading model cost 2.446 seconds.
Prefix dict has been built succesfully.
曹操         1348
刘备         1144
孔明          865
关羽          557
吕布          322
张飞          300

词云图片

#!/usr/bin/env python
# coding=utf-8import jieba
import wordcloudf = open("threekingdom.txt","rb")
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = " ".join(ls)
w = wordcloud.WordCloud(    font_path = "NotoSerifCJK-Bold.ttc",\width = 1000,height = 700,background_color = "white",\)w.generate(txt)
w.to_file("gr.png")

代码运行

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/382489.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql 学习笔记03修改表以及其他操作

首先创建一张表 在现有表的结构上增加字段 alter table users add image varchar(100) not null defalut comment 图片路径;修改某个字段的长度 alter table users modify job vachar(60) not null comment 工作;删除某个字段 删除sex这个字段 alter table users drop se…

mysql 学习笔记04 insert与update语句

1.插入数据 注意事项&#xff1a; 字符和日期类型&#xff0c; 要用 单引号 括起来 insert into (), (), () 例如&#xff1a; insert into goods values(1, abc, 2.2), (2, def, 3.3);这种形式添加多条记录 insert 语句&#xff0c;如果没有指定字段名&#xff0c;则values …

PyCharm怎么关闭端口,解决端口占用问题

在进行web开发遇到这个问题&#xff01;

mysql 笔记05 select语句以及条件语句的使用

select语句 过滤重复语句&#xff08;distinct&#xff09; 举例&#xff1a; 查询学生的总分 select name, math English China as 总分 from students;在姓赵的学生总分基础上&#xff0c; 增加60%&#xff0c; select name, round((math English China) * 1.6, 2) as …

mysql 学习笔记05 统计函数的相关使用

合计函数count&#xff0c; 统计多少条记录 统计共有多少学生 select count(*) from students;查询数学成绩大于等于90的学生数量 select count(*) from students where math > 90;查询总分超过235分的学生的数量 select count(*) from students where (English math Ch…

mysql学习笔记06分组语句的使用

group by 子句 对列进行分组 有两张表&#xff1a; 一张为部门表&#xff0c; 一张为员工表统计 每个部门的平均工资&#xff0c;与最高工资 select avg(salary), max(salary) from emp group by deptno;统计 每个部门的每个岗位的 平均工资与最低工资&#xff08;注意这里的…

Django学习笔记《一》初始化pycharm和mysql数据库及相关环境

真的不太好学啊&#xff01;记录一下笔记&#xff0c;要不有的东西老要查&#xff01; CSRF验证 防止伪造数据添加数据库&#xff0c;关闭方式 MIDDLEWARE [django.middleware.security.SecurityMiddleware,django.contrib.sessions.middleware.SessionMiddleware,django.m…

mysql 学习笔记07日期相关函数01

函数基本介绍&#xff1a; 基本使用&#xff1a; 使用日期函数插入数据&#xff1a; 2. date函数的举例&#xff1a; data_add函数举例&#xff1a; data_sub函数举例&#xff1a; datadiff函数举例&#xff1a; 综合案例&#xff1a; 3. 10分钟之内发出的信息

Django学习笔记《二》图书管理系统

挂载到阿里云方法 图书馆书籍管理系统

mysql 学习笔记08 日期相关函数2

基本介绍 now()函数举例&#xff1a; 可以直接插入数据&#xff0c;数值为当前日期时间 year 函数的使用&#xff1a; 只统计2016年的数据信息 month函数的使用 只统计2016年6月份的数据信息 unix_timestamp函数的使用 返回一个秒数&#xff0c;的时间戳 可以作为数值&am…

Django学习笔记《一》图书管理系统项目挂载到阿里云

项目示例 pycharm编译好的项目 阿里云服务器域名 成果展示 如果不能访问&#xff0c;可能端口已经关闭。 遇到的问题一大堆&#xff0c;大量使用网上文章&#xff0c;如有问题&#xff0c;进行留言联系。 简单做一个记录供自己查阅和检索&#xff0c;以备下次服务器搭建&a…

mysql 学习笔记09字符串相关函数

相关介绍&#xff1a; concat函数使用&#xff0c;拼接字符串 大小写转换函数 length函数&#xff0c;统计字符串长度&#xff08;字节数&#xff09; replace 函数&#xff0c;字符串内容替换&#xff1a; substring函数使用&#xff0c;字符串截取 综合使用&#…

CSDN-markdown编辑器语法速查手册

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…

mysql 学习笔记10 常用数学函数

概述&#xff1a; abs的使用&#xff0c;取绝对值 select abs(-100); 返回100ceiling&#xff0c;向上取整&#xff0c; floor&#xff0c;向下取整 format函数&#xff0c;设置小数显示位数&#xff0c;与round函数类似 least函数&#xff0c;取参数中的最小值mod函数&#xf…

mysql 学习笔记 11过程控制

概述&#xff1a; if举例&#xff1a; 如果conm等于null&#xff0c;就返回0&#xff0c;否则返回conm 使用if参与运算,这样就避免了conm为null时候&#xff0c;无法参与运算的情况 ifnull举例&#xff1a; select case when expr1 then expr1_res when expr2 then expr2_res…

mysql学习笔记12 其他函数

1.概述&#xff1a; 举例&#xff1a; 查询用户 mysql> select user(); -------------------- | user() | -------------------- | root192.168.135.1 | --------------------显示当前所用数据库 mysql> select database(); ------------- | database() …

CSDN-markdown编辑器

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…

mysql 学习笔记13 查询语句强化

使用控制语句计算员工年工资 查询入职时间&#xff0c;晚于1982年1月1日的&#xff0c;&#xff08;日期是可以进行比较的&#xff09; where中like的使用 select name, sal from users where like S%; select name, sal from users where like __O%;order by&#xff0c;使用…

mysql学习笔记14 多表查询初步

对数据分组的总结 举例&#xff1a;统计各个部门的平均工资&#xff0c;并且是大于1000的&#xff0c;并且按照平均工资从高到底排序 mysql> select avg(stsal) as myavgsal, stdepno from staff group by stdepno having myavgsal > 1000 order by myavgsal desc; ----…

mysql 学习笔记15 子查询

子查询定义&#xff1a; 单上子查询举例&#xff1a; 显示与 员工 关平 同一部门的员工&#xff0c; 但不包括关平 select * from staff where staff.stdepno (select staff.stdepno from staff where stname关平) and staff.stname<> 关平 ;多行子查询举例&#xff…