jieba库
jieba简介
- jieba 是一个非常受欢迎的中文分词库
- 中文分词:这是 jieba 库最主要的功能。它能够将一段中文文本按照词语进行切分。例如,对于句子 “我爱自然语言处理”,jieba 分词后可以得到 [“我”, “爱”, “自然语言”, “处理”] 这样的结果。分词的准确性对于很多自然语言处理任务(如文本分类、信息检索、机器翻译等)都非常重要。
- 词性标注(可选扩展功能):除了分词,jieba 还可以为每个分出来的词标注词性,如名词、动词、形容词等。这有助于进一步理解文本的语法结构和语义信息。
jieba下载
# 可以使用 pip 命令进行安装
pip install jieba
jieba使用方法
-
简单分词
- 导入 jieba 库后,使用jieba.lcut()函数可以对文本进行分词。
import jieba text = "这是一个测试句子" words = jieba.lcut(text) print(words)
- 运行结果会是[‘这是’, ‘一个’, ‘测试’, ‘句子’]。这里lcut()函数返回的是一个列表类型的分词结果。
-
精确模式分词
- jieba.cut()函数提供了精确模式分词,它返回的是一个可迭代的生成器对象。
import jieba text = "中华人民共和国" words_generator = jieba.cut(text) words = list(words_generator) print(words)
- 结果为[‘中华人民共和国’],这种精确模式适合在对文本准确性要求较高的场景下使用,比如文本挖掘中的实体识别等。
-
全模式分词
- 使用jieba.lcut()函数并设置参数cut_all = True可以进行全模式分词。全模式会把文本中所有可能的词语都切分出来。
import jieba text = "我们一起学习自然语言处理" words = jieba.lcut(text, cut_all=True) print(words)
- 可能的结果有[‘我们’, ‘一起’, ‘学习’, ‘自然’, ‘语言’, ‘自然语言’, ‘处理’]等更多的词语组合,这种模式适合在需要获取文本所有可能词汇的场景下使用,比如词汇挖掘。
jieba自定义词典
- 在实际应用中,jieba 的默认词典可能无法满足所有需求。例如,对于一些特定领域的专业词汇或者新出现的网络词汇,jieba 可能无法正确切分。这时可以通过自定义词典来解决这个问题。
- 自定义词典的格式一般是每行一个词,词后面可以跟上词频(可选)、词性(可选)。例如,创建一个名为user_dict.txt的自定义词典文件,内容如下:
人工智能 100 n 区块链 80 n
- 在代码中加载自定义词典可以使用jieba.load_userdict(“user_dict.txt”)。这样,当对包含 “人工智能”“区块链” 等词汇的文本进行分词时,jieba 就能正确切分这些词了。
jieba实例
import jieba
str = '我们在学习python办公自动化'
jieba.add_word('python办公自动化') #向辞海中添加词
a = jieba.lcut(sentence=str)
print(a)
结果
如果不向辞海添加python自动化则为:
import jieba
str = '我们在学习python办公自动化'
# jieba.add_word('python办公自动化') #向辞海中添加词
a = jieba.lcut(sentence=str)
print(a)