Python中文分词:jieba分词函数的用法
jieba分词函数是Python中文分词库中最为流行的库。它支持中文分词、关键词提取、词性标注等功能,具有词性标注精确度高、速度快、支持自定义词库等优点。下面我们来看一下jieba分词函数的用法。
### 安装:
使用pip安装:pip install jieba
### 分词:
分词是jieba库最基本的功能,用于将一段中文文本切分成单个的词语。以下是分词的基本用法:
import jieba
sentence1 = "我来自中国北京"
seg_list = jieba.cut(sentence1, cut_all=False)
print("Default Mode: ", " ".join(seg_list))
输出结果:
Default Mode: 我 来自 中国 北京
在上面的代码中,“jieba.cut()”函数的 个参数是要进行分词的文本,第二个参数是“cut_all”(全模式)或者“cut_for_search”(搜索引擎模式)。为了得到精确的结果,我们使用默认模式即可。
### 添加自定义词库:
jieba分词函数也允许用户添加自定义的词库。这个特性可以让我们将多个单词或短语划分为一个词语,提高分词的准确度。以下是添加自定义词库的例子:
import jieba
# 加载自定义的词库
jieba.load_userdict('userdict.txt')
sentence2 = "我爱北京天安门"
seg_list = jieba.cut(sentence2, cut_all=False)
print(" ".join(seg_list))
输出结果:
我 爱 北京 天安门
其中,'userdict.txt'文件是自己准备的词库文件,每行一个词语,可以包含词语的词性。下面是一个词库文件的例子:
中国 n 中华 n 北京 ns 天安门 ns
### 提取关键词:
除了分词,jieba库还支持提取文本中的关键词。以下是提取关键词的例子:
import jieba.analyse
sentence3 = "我喜欢看蓝天白云和大海"
keywords = jieba.analyse.extract_tags(sentence3, topK=3, withWeight=False)
print(" ".join(keywords))
输出结果:
大海 蓝天白云 喜欢
其中,“jieba.analyse.extract_tags()”函数的 个参数是要提取关键词的文本,第二个参数是需要提取的关键词数量,第三个参数“withWeight”表示是否返回每个关键词的权重。
### 词性标注:
jieba分词库还支持中文文本词性标注功能。以下是词性标注的例子:
import jieba.posseg as pseg
sentence4 = "我爱北京天安门"
words = pseg.cut(sentence4)
for word, flag in words:
print('%s %s' % (word, flag))
输出结果:
我 r 爱 v 北京 ns 天安门 ns
其中,“jieba.posseg.cut()”函数与“jieba.cut()”函数的使用方式相同,都是用于分词,不同的是前者返回的是带有词性标注的结果。
### 总结:
Python中文分词库jieba的功能非常丰富,本文详细介绍了其中的分词、添加自定义词库、提取关键词和词性标注等基本用法。学会使用jieba库,可以提高中文文本处理的效率和准确性。
