首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Python中文分词的jieba库

Python中文分词的jieba库

作者头像
用户2423478
发布2025-11-24 17:38:47
发布2025-11-24 17:38:47
20
举报
文章被收录于专栏:具身小站具身小站

1. jieba库概述

jieba是Python中最流行的中文分词库,采用基于前缀词典实现的高效分词算法,支持多种分词模式,是中文自然语言处理(NLP)的基础工具。 核心特性

  • 精确模式:试图将句子最精确地切开,适合文本分析
  • 全模式:把句子中所有可以成词的词语都扫描出来,速度非常快但有冗余
  • 搜索引擎模式:在精确模式基础上,对长词再次切分,提高召回率
  • 支持自定义词典:可添加专业领域词汇提高分词准确度
  • 支持词性标注:可标注分词结果的词性
  • 支持并行分词:利用多核CPU加速分词处理

2. jieba.cut基础分词函数

代码语言:javascript
复制
import jieba
seg_list = jieba.cut("这是一个测试文本", cut_all=False)

参数说明

参数

类型

默认值

说明

sentence

str

必需

待分词的字符串

cut_all

bool

False

是否采用全模式

HMM

bool

True

是否使用HMM模型

use_paddle

bool

False

是否使用PaddlePaddle模型(需额外安装)

返回值 关键点:jieba.cut()返回的是生成器(Generator),不是列表或元组。

这意味着:生成器只能被迭代一次,之后就会耗尽,无法直接索引(如seg_list[0]会报错),无法直接获取长度(如len(seg_list)会报错),内存效率高,适合处理大文本,但需要特别注意使用方式。

3. 其他常用函数

jieba.lcut(sentence, cut_all=False, HMM=True, use_paddle=False) 功能:与cut()功能相同,但直接返回列表而非生成器,解决了生成器只能迭代一次的问题,便于多次使用分词结果。

jieba.cut_for_search(sentence, HMM=True) 功能:搜索引擎模式分词,对长词再次切分以提高召回率,在精确模式基础上,对未在词典中找到的长词进行二次切分

jieba.posseg.cut(sentence, HMM=True) 功能:提供词性标注功能,基于精确模式分词并标注词性

jieba.add_word(word, freq=None, tag=None) 功能:向分词词典中添加新词 参数: word:要添加的词语; freq:词频(可选),用于调整词语切分优先级; tag:词性(可选)

jieba.load_userdict(file_name) 功能:加载自定义词典文件 文件格式:每行一个词,格式为:词语 词频 词性(词频和词性可选)

jieba.tokenize(sentence, mode=‘default’, HMM=True) 功能:返回词语在原文中的位置信息 参数:mode:‘default’(精确模式)或’search’(搜索引擎模式) 返回值:元组列表,每个元组包含(词语, 起始位置, 结束位置)

jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=()) 功能:基于TF-IDF算法提取关键词 参数: topK:返回关键词数量 withWeight:是否返回权重值 allowPOS:仅提取指定词性的词

jieba.enable_parallel(num) 功能:利用多核CPU加速分词处理,启用并行分词,参数为并行进程数,程序结束可以调用jieba.disable_parallel()关闭并行分词

4. 安装

代码语言:javascript
复制
pip install jieba
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-08-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 具身小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. jieba库概述
  • 3. 其他常用函数
  • 4. 安装
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档