当前位置: 首页 > news >正文

Python常用的第三方模块之【jieba库】支持三种分词模式:精确模式、全模式和搜索引擎模式(提高召回率)

        Jieba 是一个流行的中文分词Python库,它提供了三种分词模式:精确模式全模式搜索引擎模式。精确模式尝试将句子最精确地切分,适合文本分析;全模式则扫描文本中所有可能的词语,速度快但存在冗余;搜索引擎模式在精确模式的基础上,对长词进行再次切分,提高召回率

分词功能

        Jieba的核心功能是分词,它依据词库确定汉字间的关联概率。用户可以通过以下函数进行分词操作:

  • jieba.cut(s, cut_all=False): 精确模式,默认模式,返回一个可迭代的generator对象。

  • jieba.cut(s, cut_all=True): 全模式,返回一个可迭代的generator对象,可能包含冗余。

  • jieba.cut_for_search(s): 搜索引擎模式,返回一个可迭代的generator对象,对长词进行再次切分。

返回列表的分词

Jieba还提供了返回列表形式的分词结果的函数:

  • jieba.lcut(s): 精确模式,返回一个列表类型的分词结果。

  • jieba.lcut(s, cut_all=True): 全模式,返回一个列表类型的分词结果,存在冗余。

  • jieba.lcut_for_search(s): 搜索引擎模式,返回一个列表类型的分词结果,存在冗余。

自定义词典

        用户可以通过jieba.add_word(w)向分词词典中增加新词,以提高分词的准确性。例如,如果有一个不常见的词语“就这”,可以添加到词典中,使得Jieba在未来的分词操作中能够识别它。

import jieba# 精确模式
words = jieba.cut("我爱自然语言处理", cut_all=False)
for word in words:print('精确模式:',word)# 全模式
words = jieba.cut("我爱自然语言处理", cut_all=True)
for word in words:print('全模式:',word)# 搜索引擎模式
words = jieba.cut_for_search("我爱自然语言处理")
for word in words:print('搜索引擎模式:',word)

示例:

import jieba
import chardet
from chardet import UniversalDetectorfileName='AI工具集.txt'
# #读取进来,with open只能打开txt这样的纯文本,请勿打开非文本文档(比如Office系列excel),尝试使用UTF-8编码打开文件
with open(fileName, 'r', encoding='utf-8') as file:content = file.read()# print(content)#分词
lst=jieba.lcut(content)
print(lst)#去重操作
set1=set(lst) #使用集合实现去重
#
d={} #key:词,value:出现的次数
for item in set1:if len(item)>2:print(item)d[item]=0#统计出现次数
for item in lst:if item in d:d[item]=d.get(item)+1
print(d)new_lst=[]
for item in d:new_lst.append([item,d[item]])
print(new_lst)#排序
new_lst.sort(key=lambda x:x[1],reverse=True)
print(new_lst[0:11]) #显示的是前10项

相关文章:

  • 从Nacos derby RCE学习derby数据库的利用
  • 【Linux】冯诺依曼体系结构及操作系统架构图的具体剖析
  • Redisson Watchdog实现原理与源码解析:分布式锁的自动续期机制
  • 蚊子的搜索距离可达60公里:对一些特殊气味有所偏爱
  • vue3 el-table 右击
  • 深入理解 java synchronized 关键字
  • 用高斯溅射技术跨越机器人模拟与现实的鸿沟:SplatSim 框架解析
  • 本文通俗简介-优雅草星云物联网AI智控系统软件介绍-星云智控是做什么用途的??-优雅草卓伊凡
  • 基于ZU15EG+ADRV9009的无人机平台
  • C++23 新特性:令声明顺序决定非静态类数据成员的布局 (P1847R4)
  • Visual Studio2022 配置 SDL3及拓展库
  • 从DVP、LVDS到MIPI:视频传输接口全解析
  • Unity ML-Agents + VScode 环境搭建 Windows
  • AI大模型学习十一:‌尝鲜ubuntu 25.04 桌面版私有化sealos cloud + devbox+minio,实战运行成功
  • 工业/电网场景如何选择合适的储能协调控制器方案?
  • 基于python代码的通过爬虫方式实现tiktok发布视频(2025年4月)
  • 第六章 QT基础:4、QT的TCP网络编程
  • 【锂电池剩余寿命预测】CNN卷积神经网络锂电池剩余寿命预测(Pytorch完整源码和数据)
  • 【android bluetooth 协议分析 11】【AVDTP详解 2】【avdtp 初始化阶段主要回调关系梳理】
  • 个人mysql学习笔记
  • 这 3 种食物,不要放进微波炉!第 1 个就大意了
  • 3:0战胜日本队,中国羽毛球队挺进2025苏迪曼杯决赛
  • 神十九都带回了哪些实验样品?果蝇等生命类样品已交付科学家
  • 王受文已任中华全国工商业联合会领导班子成员
  • 圆桌|如何应对特朗普政府的关税霸凌?一种联合国视角的思考
  • “女乘客遭顺风车深夜丢高速服务区”续:滴滴永久封禁两名涉事司机账号