Python jieba库用法及实例解析

yipeiwu_com6年前Python基础

1、jieba库基本介绍

(1)、jieba库概述

jieba是优秀的中文分词第三方库

  • - 中文文本需要通过分词获得单个的词语
  • - jieba是优秀的中文分词第三方库,需要额外安装
  • - jieba库提供三种分词模式,最简单只需掌握一个函数

(2)、jieba分词的原理

Jieba分词依靠中文词库

- 利用一个中文词库,确定汉字之间的关联概率
- 汉字间概率大的组成词组,形成分词结果

- 除了分词,用户还可以添加自定义的词组

jieba库使用说明

(1)、jieba分词的三种模式

精确模式、全模式、搜索引擎模式

  • - 精确模式:把文本精确的切分开,不存在冗余单词
  • - 全模式:把文本中所有可能的词语都扫描出来,有冗余
  • - 搜索引擎模式:在精确模式基础上,对长词再次切分

(2)、jieba库常用函数

2.jieba应用实例

3.利用jieba库统计三国演义中任务的出场次数

import jieba

txt = open("D:\\三国演义.txt", "r", encoding='utf-8').read()
words = jieba.lcut(txt)   # 使用精确模式对文本进行分词
counts = {}   # 通过键值对的形式存储词语及其出现的次数

for word in words:
  if len(word) == 1:  # 单个词语不计算在内
    continue
  else:
    counts[word] = counts.get(word, 0) + 1  # 遍历所有词语,每出现一次其对应的值加 1
    
items = list(counts.items())#将键值对转换成列表
items.sort(key=lambda x: x[1], reverse=True)  # 根据词语出现的次数进行从大到小排序

for i in range(15):
  word, count = items[i]
  print("{0:<5}{1:>5}".format(word, count))

统计了次数对多前十五个名词,曹操不愧是一代枭雄,第一名当之无愧,但是我们会发现得到的数据还是需要进一步处理,比如一些无用的词语,一些重复意思的词语。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用OpenCV实现仿射变换—平移功能

使用OpenCV实现仿射变换—平移功能

当我们打开一个图片编辑软件时,基本上都会提供几个操作:平移、缩放和旋转。特别目前在手机里拍照时,由于位置传感器的失灵,也许是软件的BUG,有一次我就遇到苹果手机不管怎么样竖放,或横放,它...

python sqlobject(mysql)中文乱码解决方法

UnicodeEncodeError: 'latin-1' codec can't encode characters in position; 找了一天终于搞明白了,默认情况下,mys...

一些Python中的二维数组的操作方法

需要在程序中使用二维数组,网上找到一种这样的用法:   #创建一个宽度为3,高度为4的数组 #[[0,0,0], # [0,0,0], # [0,0,0], # [0,...

RC4文件加密的python实现方法

本文实例讲述了RC4文件加密的python实现方法。分享给大家供大家参考。具体分析如下: 基于RC4流加密算法,使用扩展的16*16的S盒,32字节密钥。 目前应该是比较安全的。 &nb...

Python实现多态、协议和鸭子类型的代码详解

多态 问起面向对象的三大特性,几乎每个人都能对答如流:封装、继承、多态。今天我们就要来说一说 Python 中的多态。 所谓多态:就是指一个类实例的相同方法在不同情形有不同表现形式。多态...