法1:Anaconda Prompt下输入conda install jieba
法2:Terminal下输入pip3 install jieba
1.1、CUT函数简介
cut(sentence, cut_all=False, HMM=True)
返回生成器,遍历生成器即可获得分词的结果
lcut(sentence)
返回分词列表
import jiebasentence = '我爱自然语言处理'# 创建【Tokenizer.cut 生成器】对象generator = jieba.cut(sentence)# 遍历生成器,打印分词结果words = '/'.join(generator)print(words)
打印结果
我/爱/自然语言/处理
import jiebaprint(jieba.lcut('我爱南海中学'))
打印结果
[‘我', ‘爱', ‘南海中学']
1.2、分词模式
精确模式:精确地切开
全模式:所有可能的词语都切出,速度快
搜索引擎模式:在精确模式的基础上,对长词再次切分
import jiebasentence = '订单数据分析'print('精准模式:', jieba.lcut(sentence))print('全模式:', jieba.lcut(sentence, cut_all=True))print('搜索引擎模式:', jieba.lcut_for_search(sentence))
打印结果
精准模式: [‘订单', ‘数据分析']
全模式: [‘订单', ‘订单数', ‘单数', ‘数据', ‘数据分析', ‘分析']
搜索引擎模式: [‘订单', ‘数据', ‘分析', ‘数据分析']
1.3、词性标注
jieba.possegimport jieba.posseg as jpsentence = '我爱Python数据分析'posseg = jp.cut(sentence)for i in posseg: print(i.__dict__) # print(i.word, i.flag)
打印结果
{‘word': ‘我', ‘flag': ‘r'}{‘word': ‘爱', ‘flag': ‘v'}{‘word': ‘Python', ‘flag': ‘eng'}{‘word': ‘数据分析', ‘flag': ‘l'}
词性标注表
标注 | 解释 | 标注 | 解释 | 标注 | 解释 |
---|---|---|---|---|---|
a | 形容词 | mq | 数量词 | tg | 时语素 |
ad | 副形词 | n | 名词 | u | 助词 |
ag | 形语素 | ng | 例:义 乳 亭 | ud | 例:得 |
an | 名形词 | nr | 人名 | ug | 例:过 |
b | 区别词 | nrfg | 也是人名 | uj | 例:的 |
c | 连词 | nrt | 也是人名 | ul | 例:了 |
d | 副词 | ns | 地名 | uv | 例:地 |
df | 例:不要 | nt | 机构团体 | uz | 例:着 |
dg | 副语素 | nz | 其他专名 | v | 动词 |
e | 叹词 | o | 拟声词 | vd | 副动词 |
f | 方位词 | p | 介词 | vg | 动语素 |
g | 语素 | q | 量词 | vi | 例:沉溺于 等同于 |
h | 前接成分 | r | 代词 | vn | 名动词 |
i | 成语 | rg | 例:兹 | vq | 例:去浄 去过 唸过 |
j | 简称略语 | rr | 人称代词 | x | 非语素字 |
k | 后接成分 | rz | 例:这位 | y | 语气词 |
l | 习用语 | s | 处所词 | z | 状态词 |
m | 数词 | t | 时间词 | zg | 例:且 丗 丟 |
新闻热点
疑难解答