jieba库的安装和应用

这篇具有很好参考价值的文章主要介绍了jieba库的安装和应用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

        一、jieba库

        二、 jieba库的安装

         三、jieba三种模式的使用

        四、jieba 分词简单应用

        五、扩展:英文单词统计


一、jieba库

        jieba库是一款优秀的 Python 第三方中文分词库,jieba 支持三种分词模式:精确模式、全模式和搜索引擎模式,下面是三种模式的特点。

精确模式:试图将语句最精确的切分,不存在冗余数据,适合做文本分析

全模式:将语句中所有可能是词的词语都切分出来,速度很快,但是存在冗余数据

搜索引擎模式:在精确模式的基础上,对长词再次进行切分

二、 jieba库的安装

因为 jieba 是一个第三方库,所有需要我们在本地进行安装。

Windows 下使用命令安装:在联网状态下,在命令行下输入 pip install jieba 进行安装,安装完成后会提示安装成功。

 pip install jieba 

jieba库的安装和应用

 在 pyCharm 中安装:打开 settings,搜索 Project Interpreter,在右边的窗口选择 + 号,点击后在搜索框搜索 jieba,点击安装即可

 三、jieba三种模式的使用

# -*- coding: utf-8 -*-
import jieba

seg_str = "好好学习,天天向上。"

print("/".join(jieba.lcut(seg_str)))    # 精简模式,返回一个列表类型的结果
print("/".join(jieba.lcut(seg_str, cut_all=True)))      # 全模式,使用 'cut_all=True' 指定 
print("/".join(jieba.lcut_for_search(seg_str)))     # 搜索引擎模式

分词效果:

四、jieba 分词简单应用

需求:使用 jieba 分词对一个文本进行分词,统计次数出现最多的词语,这里以三国演义为例

# -*- coding: utf-8 -*-
import jieba

txt = open("三国演义.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(3):
    word, count = items[i]
    print("{0:<5}{1:>5}".format(word, count))

统计结果:

你可以随便找一个文本文档,也可以到 https://github.com/coderjas/python-quick 下载上面例子中的文档。

五、扩展:英文单词统计

上面的例子统计实现了中文文档中出现最多的词语,接着我们就来统计一下一个英文文档中出现次数最多的单词。原理同上

# -*- coding: utf-8 -*-

def get_text():
    txt = open("1.txt", "r", encoding='UTF-8').read()
    txt = txt.lower()
    for ch in '!"#$%&()*+,-./:;<=>?@[\\]^_‘{|}~':
        txt = txt.replace(ch, " ")      # 将文本中特殊字符替换为空格
    return txt

file_txt = get_text()
words = file_txt.split()    # 对字符串进行分割,获得单词列表
counts = {}

for word in words:
    if len(word) == 1:
        continue
    else:
        counts[word] = counts.get(word, 0) + 1 

items = list(counts.items())    
items.sort(key=lambda x: x[1], reverse=True)      

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

统计结果:

 注:本篇文章参考Python入门:jieba库的使用_jieba库的用法_留兰香丶的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-419285.html

到了这里,关于jieba库的安装和应用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ThinkPHP 验证码扩展库的使用,以及多应用模式下,如何自定义验证码校验规则

    首先,验证码扩展库是需要view扩展的 安装完成后,接着安装验证码扩展库 视图使用的说明: 页面使用的话,两种方式 侧重说明一下,使用第二种方式 我们只需要在控制器中提供一个方法,用于验证码的生成,然后前端将img的src属性修改为对应的方法路径即可 属性说明:

    2024年02月10日
    浏览(34)
  • Linux三种安装模式及挂载

    linux 当中一切皆文件,无论硬件软件都要当成文件来使用,硬件不能直接当成文件来使用的。所以启用挂载来调用硬件 挂载:是硬件和根分区下某一文件夹做关联, 相当于这个文件夹是进入硬盘的一个入口 mount 挂载 df 查看挂在情况 2.1 格式: 2.2 查询 选项 作用 q 软件名 查

    2024年02月03日
    浏览(25)
  • 二十三种设计模式全面解析-装饰器模式的高级应用:打造灵活可扩展的通知系统

    在现代软件开发中,通知系统是一个广泛应用的功能,用于实时向用户发送各种类型的通知,如短信、微信、邮件以及系统通知。然而,通知系统的需求通常是多变且动态的,因此需要一种灵活可扩展的设计模式来满足不同类型的通知需求。 在前面一篇文章中,我们介绍了什

    2024年02月06日
    浏览(37)
  • 二十三种设计模式全面解析-桥接模式的高级应用:构建灵活的跨平台UI框架

    在软件开发的世界中,桥接模式(Bridge Pattern)作为一种设计模式,旨在将抽象部分与实现部分分离,从而使它们可以独立地变化。这一模式的应用不仅有助于提高代码的可维护性,还在一些复杂的场景中展现出其真正的价值。 前面一篇文章中,我们介绍了什么是桥接模式?

    2024年02月05日
    浏览(39)
  • Jieba分词模式详解、词库的添加与删除、自定义词库失败的处理

    Jieba(结巴)是一个中文分词第三方库,它可以帮助我们将一段中文文本分成一个个独立的词语。Jieba具有以下特点: 简单易用:Jieba提供了简洁的API接口,易于使用和扩展。可以快速地实现中文分词功能。 高效准确:Jieba采用了基于前缀词典和动态规划算法的分词方法,能够

    2024年02月05日
    浏览(22)
  • 关于jetbrains toolbox 无法修改应用安装目录

    jetbrains toolbox 界面右上角的 设置 ,找到 工具 一栏,修改 工具安装位置 即可。 但是我的 toolbox无论是copy路径还是选取路径都无法更改 1.关闭toolbox 2.在 C:Users用户名AppDataLocalJetBrainsToolbox 目录下找到 .settings 文件并打开 (如果找不到可以去toolbox的设置中找到更改路径cop

    2024年02月12日
    浏览(52)
  • 0.uiautomation自动化库的详细目录索引

    类class ListControl列表控件 TabControl标签页控制器 Keys键盘按键 Rect矩形 WindowControl窗口控件 ButtonControl按钮控件 PaneControl窗格控件 CheckBoxControl复选框控件 ToggleState切换状态 在软件开发和用户界面设计中,它通常指的是一个可以切换两种或多种不同状态的控件(如复选框、开关按

    2024年04月27日
    浏览(29)
  • Python安装jieba库教程

    jieba库是一款优秀的 Python 第三方中文分词库,jieba 支持三种分词模式:精确模式、全模式和搜索引擎模式,下面是三种模式的特点。 精确模式:试图将语句最精确的切分,不存在冗余数据,适合做文本分析 全模式:将语句中所有可能是词的词语都切分出来,速度很快,但是

    2023年04月27日
    浏览(29)
  • Nginx下载和安装教程、Nginx目录结构、Nginx具体应用

    Nginx是一款轻量级的开源Web服务器软件,也是一种反向代理服务器。它以其高性能和灵活性而被广泛应用于互联网领域。本文将介绍Nginx的概述、下载和安装以及目录结构。 (1)Nginx介绍 Nginx最初由Igor Sysoev开发,目的是解决C10K问题,即同时处理成千上万个并发连接的需求。

    2024年02月15日
    浏览(38)
  • STM32三种开发方式及标准库和HAL库的编程差异

     三种开发方式 STM32基于标准库函数和HAL库编程差异_stm32库函数和hal库-CSDN博客 本文目的是以串口通信来简要分析STM32使用标准库函数和HAL库函数编程的差异。目录(一)开发方式1.配置寄存器2.库函数3.HAL库(二)库函数与HAL库对比1.串口通信实验2.库函数与HAL库比较(三)总

    2024年02月07日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包