python对红楼梦的每一章节进行词频统计
python对红楼梦的每一章节进行词频统计
import jieba
f=open("G:\\红楼梦.txt","r",encoding="utf-8")
txt=f.read()
words=jieba.lcut(txt)#精准模式
ls=[]
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201030001436824.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3RkbDMyMDcyMQ==,size_16,color_FFFFFF,t_70#pic_center)
for word in words:
a={}
if word[0] == "第" and word[-1] == "回":
if word in ls:
continue
else:
ls.append(word)
print(ls)
for i in range(len(ls)):
print(ls[i])
a={}
if i
for word in words[words.index(ls[i])+1:words.index(ls[i + 1])]:
if len(word) == 1: # 排除单个字符的统计结果
continue
else:
a[word] = a.get(word, 0) + 1
elif i ==len(ls)-1:#最后一回
for word in words[words.index(ls[i])+1:]:
if len(word) == 1: # 排除单个字符的统计结果
continue
else:
a[word] = a.get(word, 0) + 1
items = list(a.items()) # 将字典转换为记录列表
items.sort(key=lambda x: x[1], reverse=True) # 记录第二列排序
for i in range(5):
word, count = items[i]
print("{0:<10}{1:>5}".format(word, count))
print("\n")
f.close()
第一步是打开红楼梦.txt文件,只读的方式,使用UTF-8编码方式
第二步是使用精准模式,将单词保存到words列表中,再将“第几回”存放到一个新的列表中,便于对红楼梦文件每一回进行切片,切边的界点便是第多少回这样的字眼,第一种统计是第i回到第i+1回的之间的词频统计,还有一种就是最后一回的词频统计。
使用一个字典类型a={},统计单词的次数:
for word in words:
if len(word)==1:#排除单个字符的统计结果
continue
else:
a[word]=a.get(word,0)+1
如果字符长度为1则跳过,否则使用a.get(word,0)方法表示:如果word在a中则返回word对应的值,如果word不在a中就返回0。
第三步是对单词的统计的值从高到低进行排序,输出前5个高频词语,并格式化打印输出。由于字典没有顺序,需要将其转换为有顺序的列表类型,再使用sort()方法和lambda函数配合实现单词出现的次数,对元素进行排序。最后输出排序结果前15位的单词。
items=list(a.items())#将字典转换为记录列表
items.sort(key=lambda x:x[1],reverse=True)#记录第二列排序
python对红楼梦的每一章节进行词频统计相关教程
Python爬虫入门实例六之IP地址归属地的自动查询
Python爬虫入门实例六之IP地址归属地的自动查询 文章目录 1.爬取原页面 2.编程思路 3.完整代码 引用源自 使用的网站链接:https://ipchaxun.com/. 页面如下图: ??将想要查询的IP地址复制给变量a,通过观察网站的URL在查询前后的变化,基于规则构建提交IP地址
瞧瞧,这样的代码才叫 Pythonic
瞧瞧,这样的代码才叫 Pythonic 作者|写代码的明哥 来源 | Python编程时光(ID:Cool-Python) 头图 | CSDN下载自东方IC Python由于语言的简洁性,让我们以人类思考的方式来写代码,新手更容易上手,老鸟更爱不释手。 要写出 Pythonic(优雅的、地道的、整洁
最全总结 | 聊聊 Python 办公自动化之 Excel(中)
最全总结 | 聊聊 Python 办公自动化之 Excel(中) 聊聊 Python 数据处理全家桶(Memca 篇) 点击上方“AirPython”,选择“加为星标” 第一时间关注 Python 技术干货! 上一篇文章中,我们聊到使用xlrd、xlwt、xlutils 这一组合操作 Excel 的方法 最全总结 |
python:Cartopy的基础使用
python:Cartopy的基础使用 文章目录 前言 一、基础介绍 二、区域地图的绘制 总结 前言 常用地图底图的绘制一般由Basemap或者cartopy模块完成,由于Basemap库是基于python2开发的一个模块,目前已经不开发维护。故简单介绍cartopy模块的一些基础操作。 一、基
使用Python创建词云
使用Python创建词云 介绍 从开始从事数据可视化工作的那一天起,我就爱上它了,我总是喜欢从数据中获得有用的见解。 在此之前,我只了解基本图表,例如条形图,散点图,直方图等,这些基本图表内置在tableau中,而Power BI则用于数据可视化。通过每天完成此任
Opencv python 漫水填充(魔棒处理)
Opencv python 漫水填充(魔棒处理) 处理代码 import cv2 as cvimport numpy as npdef main(): # 1.导入图片 img_org = cv.imread(./img.png, cv.IMREAD_COLOR) # 2.设置参数 seed_point = (290, 290) # 坐标 new_val = (255, 255, 255) # 赋新值 lower_diff =
OpenCV+python识别并打印HSV颜色
OpenCV+python识别并打印HSV颜色 import cv2import imutilscap = cv2.VideoCapture(0)## Readimg = cv2.imread(D:/deng/ppp/3.png)def Detector_color(): while(True): # Capture frame-by-frame ret, frame = cap.read() frame = imutils.resize(frame, widt