11.4 jieba库

jieba不是街霸

Jieba是Python中广泛使用的中文分词工具,支持多种分词模式、自定义词典、关键词提取等功能,适用于自然语言处理任务。

常用函数

函数名 描述
lcut(s) 精确模式,返回一个列表类型
lcut(s, cut_all=True) 全模式,返回一个列表类型
lcut_for_search(s) 搜索引擎模式,返回一个列表类型
add_word(w) 向分词词典中增加新词 w

用法示例

精确模式

1
2
3
4
import jieba as j
ls = j.lcut('毕业并不代表着结束,今后我们仍然是朋友')
print(ls)
# 输出:['毕业', '并', '不', '代表', '着', '结束', ',', '今后', '我们', '仍然', '是', '朋友']

精确模式下 jieba 会按照字典对输入的文本进行处理,并将完整的语句分割为若干字词,添加到一个列表中。

全模式

1
2
3
4
import jieba as j
ls = j.lcut('欢迎报考南京信息工程大学',cut_all=True)
print(ls)
# 输出:['欢迎', '报考', '南京', '信息', '信息工程', '工程', '大学']

全模式下 jieba 会按照字典对输入的文本进行处理,只要有匹配的字词就添加到列表中,所以会有重复的部分。

搜索引擎模式

1
2
3
4
5
6
7
import jieba as j
ls = j.lcut_for_search('国家计算机二级考试Python学科')
print(ls)
# 输出:['国家', '计算', '算机', '计算机', '二级', '考试', 'Python', '学科']
ls = j.lcut('国家计算机二级考试Python学科',cut_all=True)
print(ls)
# 输出:['国家', '家计', '计算', '计算机', '算机', '二级', '考试', 'Python', '学科']

通过与全模式对比可知搜索引擎模式是把全模式执行后的一些长词进一步分割。

词典添加新词

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import jieba as j
ls = j.lcut('小华为了派蒙恬去守长城',cut_all=True)
print(ls)
# 输出:['小', '华为', '为了', '派', '蒙恬', '去', '守', '长城']
j.add_word('小华')
j.add_word('为了')
j.add_word('派蒙')
ls = j.lcut('小华为了派蒙恬去守长城',cut_all=True)
print(ls)
# 输出:['小华', '华为', '为了', '派蒙', '蒙恬', '去', '守', '长城']
Licensed under CC BY-NC-SA 4.0
已存在于互联网
发表了126篇文章 · 总计210.25k字
萌ICP备20267077号
Powered by ctOS