jieba 的分词模式代码介绍

:soogor软件 2022-07-21 08:34:46 :173
# encoding=utf-8
import jieba
jieba.initialize()  # 手动初始化jieba资源,提高分词效率。
seg_list = jieba.cut("我来到北京南站北广场西路东口", cut_all=True)
print("全模式: " + "/ ".join(seg_list))  # 全模式
seg_list = jieba.cut("我来到北京南站北广场西路东口", cut_all=False)
print("精确模式: " + "/ ".join(seg_list))  # 精确模式
seg_list = jieba.cut("我来到北京南站北广场西路东口")  # 默认是精确模式
print("默认是精确模式:"+"/ ".join(seg_list))
seg_list = jieba.cut_for_search("我来到北京南站北广场西路东口")  # 搜索引擎模式
print("搜索引擎模式, "+"/".join(seg_list))

终端:

Building prefix dict from D:\Python\lib\site-packages\jieba\dict.txt ...
Loading model from cache C:\Users\ADMINI~1\AppData\Local\Temp\jieba.cache
Loading model cost 1.628998041152954 seconds.
Prefix dict has been built succesfully.
全模式: 我/ 来到/ 北京/ 京南/ 南站/ 北广/ 北广场/ 广场/ 西路/ 路东/ 口
精确模式: 我/ 来到/ 北京/ 南站/ 北广场/ 西路/ 东口
默认是精确模式:我/ 来到/ 北京/ 南站/ 北广场/ 西路/ 东口
搜索引擎模式, 我/来到/北京/南站/北广/广场/北广场/西路/东口

总结:

全模式:

jieba.cut(str, cut_all=True)

jieba默认为精确模式,正常采用精确模式如下:

seg_list = jieba.cut(str, cut_all=False)

精确模式:

seg_list = jieba.cut_for_search(str) 

对比之下可以得出,全模式和搜索引擎模式都可以将文字的多种词语结果都给调用出来,但是从中文词上来讲搜索引擎模板更合理,而精确模式,则是依次将句子拆分成词,不走回头路

本文编辑:soogor
暂无评论,期待你的首评
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.