转自:https://www.cnblogs.com/eastmount/p/5055906.html
结巴中文分词支持的三种分词模式包括:
(1) 精确模式:试图将句子最精确地切开,适合文本分析;
(2) 全模式:把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义问题;
(3) 搜索引擎模式:在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。
同时结巴分词支持繁体分词和自定义字典方法。
例子如下:
#encoding=utf-8
import jieba
#全模式
text = "我来到北京清华大学"
seg_list = jieba.cut(text, cut_all=True)
print(u"[全模式]: ", "/ ".join(seg_list))
# [全模式]: 我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学
#精确模式
seg_list = jieba.cut(text, cut_all=False)
print(u"[精确模式]: ", "/ ".join(seg_list))
# [精确模式]: 我/ 来到/ 北京/ 清华大学
#默认是精确模式
seg_list = jieba.cut(text)
print(u"[默认模式]: ", "/ ".join(seg_list))
# [默认模式]: 我/ 来到/ 北京/ 清华大学
#新词识别 “杭研”并没有在词典中,但是也被Viterbi算法识别出来了
seg_list = jieba.cut("他来到了网易杭研大厦")
print(u"[新词识别]: ", "/ ".join(seg_list))
# [新词识别]: 他/ 来到/ 了/ 网易/ 杭研/ 大厦
# 搜索引擎模式
seg_list = jieba.cut_for_search(text)
print(u"[搜索引擎模式]: ", "/ ".join(seg_list))
# [搜索引擎模式]: 我/ 来到/ 北京/ 清华/ 华大/ 大学/ 清华大学