python基础===jieba模块,Python 中文分词组件
api参考地址:https://github.com/fxsjy/jieba/blob/master/README.md
安装自行百度
基本用法:
import jieba #全模式
word = jieba.cut("一人我饮酒醉 醉把佳人成双对 两眼 是独相随 我只求他日能双归", cut_all = True)
print("Full Mode:" + "/ ".join(word))
#>>>Full Mode:一/ 人/ 我/ 饮酒/ 酒醉/ / / 醉/ 把/ 佳人/ 成双/ 对/ / / 两眼/ / / 是/ 独/ 相随/ / / 我/ 只求/ 他/ 日/ 能/ 双/ 归 #精确模式
word = jieba.cut("一人我饮酒醉 醉把佳人成双对 两眼 是独相随 我只求他日能双归", cut_all = False)
print("Default Mode:" + '/ '.join(word))
#>>>Default Mode:一人/ 我/ 饮酒/ 醉/ / 醉/ 把/ 佳人/ 成双/ 对/ / 两眼/ / 是/ 独/ 相随/ / 我/ 只求/ 他/ 日/ 能/ 双归 #默认是精确模式
word = jieba.cut("一人我饮酒醉 醉把佳人成双对 两眼 是独相随 我只求他日能双归")
print(", ".join(word))
#>>>一人, 我, 饮酒, 醉, , 醉, 把, 佳人, 成双, 对, , 两眼, , 是, 独, 相随, , 我, 只求, 他, 日, 能, 双归 #搜索引擎模式
word = jieba.cut_for_search("败帝王斗苍天夺得了皇位已成仙豪情万丈天地间我续写了另类帝王篇")
print(", " .join(word))
#>>>败, 帝王, 斗, 苍天, 夺得, 了, 皇位, 已, 成仙, 豪情, 万丈, 豪情万丈, 天地, 天地间, 我, 续写, 了, 另类, 帝王, 篇
jieba.cut方法接受三个输入参数: 需要分词的字符串;cut_all 参数用来控制是否采用全模式;HMM 参数用来控制是否使用 HMM 模型jieba.cut_for_search方法接受两个参数:需要分词的字符串;是否使用 HMM 模型。该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细- 待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意:不建议直接输入 GBK 字符串,可能无法预料地错误解码成 UTF-8
jieba.cut以及jieba.cut_for_search返回的结构都是一个可迭代的 generator,可以使用 for 循环来获得分词后得到的每一个词语(unicode),或者用jieba.lcut以及jieba.lcut_for_search直接返回 listjieba.Tokenizer(dictionary=DEFAULT_DICT)新建自定义分词器,可用于同时使用不同词典。jieba.dt为默认分词器,所有全局分词相关函数都是该分词器的映射。
也可以自定义词组
import jieba
word = jieba.cut("一人我饮酒醉 醉把佳人成双对 两眼 是独相随 我只求他日能双归", cut_all = True)
print("Full Mode:" + "/ ".join(word))
#>>>Full Mode:一/ 人/ 我/ 饮酒/ 酒醉/ / / 醉/ 把/ 佳人/ 成双/ 对/ / / 两眼/ / / 是/ 独/ 相随/ / / 我/ 只求/ 他/ 日/ 能/ 双/ 归
#自定义词组
jieba.add_word('一人我')
word = jieba.cut("一人我饮酒醉 醉把佳人成双对 两眼 是独相随 我只求他日能双归", cut_all = True)
print("Full Mode:" + "/ ".join(word))
#>>>Full Mode:一人我/ 饮酒/ 酒醉/ / / 醉/ 把/ 佳人/ 成双/ 对/ / / 两眼/ / / 是/ 独/ 相随/ / / 我/ 只求/ 他/ 日/ 能/ 双/ 归
词性标注
import jieba.posseg as pseg
words = pseg.cut("我爱北京天安门")
for word,flag in words:
print('%s %s' % (word, flag))
#>>>我 r
爱 v
北京 ns
天安门 ns
python基础===jieba模块,Python 中文分词组件的更多相关文章
- Python中文分词组件 jieba
jieba "结巴"中文分词:做最好的Python中文分词组件 "Jieba" Feature 支持三种分词模式: 精确模式,试图将句子最精确地切开,适合文本分 ...
- python安装Jieba中文分词组件并测试
python安装Jieba中文分词组件 1.下载http://pypi.python.org/pypi/jieba/ 2.解压到解压到python目录下: 3.“win+R”进入cmd:依次输入如下代 ...
- .NET Core中文分词组件jieba.NET Core
.NET Core中文分词组件jieba.NET Core,由于实际的一些需求,需要做中文分词. 找到了一个jieba.NET https://github.com/anderscui/jieba.N ...
- python从入门到大神---Python的jieba模块简介
python从入门到大神---Python的jieba模块简介 一.总结 一句话总结: jieba包是分词技术,也就是将一句话分成多个词,有多种分词模型可选 1.分词模块包一般有哪些分词模式(比如py ...
- python基础——第三方模块
python基础——第三方模块 在Python中,安装第三方模块,是通过包管理工具pip完成的. 如果你正在使用Mac或Linux,安装pip本身这个步骤就可以跳过了. 如果你正在使用Window ...
- python基础——使用模块
python基础——使用模块 Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用. 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env ...
- 二十五. Python基础(25)--模块和包
二十五. Python基础(25)--模块和包 ● 知识框架 ● 模块的属性__name__ # my_module.py def fun1(): print("Hello& ...
- python基础系列教程——Python中的编码问题,中文乱码问题
python基础系列教程——Python中的编码问题,中文乱码问题 如果不声明编码,则中文会报错,即使是注释也会报错. # -*- coding: UTF-8 -*- 或者 #coding=utf-8 ...
- python 基础之 模块
Python 基础之模块 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 就是一个python文件中定义好了类和方法,实现了一些功能,可以被别的python文 ...
随机推荐
- Dubbo和Spring Cloud开发框架对比
前言 微服务架构是互联网很热门的话题,是互联网技术发展的必然结果.它提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值.虽然微服务架构没有公认的技术标准和规范或者草案 ...
- Python 日志输出中添加上下文信息
Python日志输出中添加上下文信息 除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如: ...
- BZOJ1046 [HAOI2007]上升序列 【LIS + 字典序最小】
1046: [HAOI2007]上升序列 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 5410 Solved: 1877 [Submit][St ...
- UVA.679 Dropping Balls (二叉树 思维题)
UVA.679 Dropping Balls (二叉树 思维题) 题意分析 给出深度为D的完全二叉树,按照以下规则,求第I个小球下落在那个叶子节点. 1. 默认所有节点的开关均处于关闭状态. 2. 若 ...
- 直通BAT面试算法精讲课 --动态规划
1.有数组penny,penny中所有的值都为正数且不重复.每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个整数aim(小于等于1000)代表要找的钱数,求换钱有多少种方法. 给定数 ...
- stout代码分析之二:None类
stout库中为了避免使用NULL带来的风险,统一用None表示空. None类的实现方式如下: struct None {}; 奇怪的是, Nothing类实现方式与None一模一样..让人怀疑作者 ...
- template.js的使用心得
template.js是一款JavaScript模板引擎,用来渲染页面的. 原理:提前将Html代码放进编写模板 <script id="tpl" type="te ...
- 第一篇 关于Android Studio的快捷键
公司最近要培训Android的课程,但是发现现在官方网站上已经不提供了Eclipse ADT的下载了,都变成了Android Studio,可能是悲催了! 对于很多Eclipse转过来的同学,不适应的 ...
- devDependencies 和 dependencise 的区别
在使用 npm install 安装模块或者插件的时候,在命令中可以添加俩种参数把他们写入到 pakeage.json 文件里面去: --save ( 简写 -S ) --save-dev ( 简写 ...
- Jumpserver代码规范
Jumpserver 项目规范(Draft) 语言框架 Python 3.6.1 (当前最新) Django 1.11 (当前最新) Flask 0.12 Luna (当前最新) Paramiko 2 ...