Python之jieba分词
jieba,很有意思的一个模块,专门用来分词。
import jieba
# sentence:分割的中文字符串
# cut_all:是否采用全模式,默认为False表示精确模式
# HMM:表示是否使用HMM模型,默认为True
seg_list1 = jieba.cut(sentence="争取在二零一九年从面相对象编程到面向对象亲亲",
cut_all=True,
HMM=True)
# 得到的是一个生成器,我们来转化成列表
print(list(seg_list1))
'''
['争取', '在', '二', '零', '一九', '九年', '从', '面相', '相对',
'对象', '编程', '到', '面向', '面向对象', '对象', '亲亲']
可以看到全匹配就是这个样子,会有重复的
'''
seg_list2 = jieba.cut(sentence="争取在二零一九年从面相对象编程到面向对象亲亲",
cut_all=False,
HMM=True)
# 改成精确模式打印一下
print(list(seg_list2))
'''
['争取', '在', '二零一', '九年', '从', '面相', '对象', '编程', '到', '面向对象', '亲亲']
可以看到整体还是比较让人满意的,除了那个二零一九年,jieba分成了"二零一"和"九年"
不过整体影响不大,毕竟二零一和九年组合起来都是比较符合常理的
'''
# 搜索引擎模式
seg_list3 = jieba.cut_for_search("争取在二零一九年从面相对象编程到面向对象亲亲")
print(list(seg_list3)) # ['争取', '在', '二零一', '九年', '从', '面相', '对象', '编程', '到', '面向', '对象', '面向对象', '亲亲']
# 关键词提取
import jieba
import jieba.analyse
sentence = "给我听到了你们这群蠢货" \
"你们一直渴望得到的时间机器已经不在这里了" \
"在这个时代已经不存在了" \
"给我好好地后悔吧" \
"然后感到恐惧吧" \
"我一定会将命运石之门找出来" \
"这就是本大爷的选择"
# sentence: 待提取的文本
# topK: 权重最大的关键词数量,默认为20个
# withWeight: 是否返回权重值,默认值为False
# allowPOS: 仅包括指定的词性的词,默认值为空,即全包括
# n: 名词 ns: 地名 vn: 名动词 v: 动词 nr: 人名,不在这里面的会被过滤掉
keywords = jieba.analyse.extract_tags(sentence=sentence,
topK=5,
withWeight=True,
allowPOS=("n", "nr", "ns")
)
for item in keywords:
print(item[0], item[1])
'''
时间机器 2.2012550785666667
石之门 1.9924612504833332
蠢货 1.8892880490833335
大爷 1.3061487405483334
命运 1.1011633218949999
'''
# 查看词性
import jieba.posseg as pos
words = pos.cut("我的太太叫新垣结衣")
for word, category in words:
print(word, category)
'''
我 r
的 uj
太太 n
叫 v
新垣 ns
结衣 n
'''
Python之jieba分词的更多相关文章
- python结巴(jieba)分词
python结巴(jieba)分词 一.特点 1.支持三种分词模式: (1)精确模式:试图将句子最精确的切开,适合文本分析. (2)全模式:把句子中所有可以成词的词语都扫描出来,速度非常快,但是不能解 ...
- python环境jieba分词的安装
我的python环境是Anaconda3安装的,由于项目需要用到分词,使用jieba分词库,在此总结一下安装方法. 安装说明======= 代码对 Python 2/3 均兼容 * 全自动安装:`ea ...
- Python使用jieba分词
# -*- coding: utf-8 -*- # Spyder (python 3.7) import pandas as pd import jieba import jieba.analyse ...
- python bottle + jieba分词服务
2019-12-16 19:46:34 星期一 最近接触到结巴分词项目, 就试试 用python的bottle库来当服务器监听localhost:8080 把请求的数据转给jieba来分词, 并返回分 ...
- python的jieba分词
# 官方例程 # encoding=utf-8 import jieba seg_list = jieba.cut("我来到北京清华大学", cut_all=True) print ...
- python安装Jieba中文分词组件并测试
python安装Jieba中文分词组件 1.下载http://pypi.python.org/pypi/jieba/ 2.解压到解压到python目录下: 3.“win+R”进入cmd:依次输入如下代 ...
- [python] 使用Jieba工具中文分词及文本聚类概念
声明:由于担心CSDN博客丢失,在博客园简单对其进行备份,以后两个地方都会写文章的~感谢CSDN和博客园提供的平台. 前面讲述了很多关于Python爬取本体Ontology.消息盒Inf ...
- Python自然语言处理学习——jieba分词
jieba——“结巴”中文分词是sunjunyi开发的一款Python中文分词组件,可以在Github上查看jieba项目. 要使用jieba中文分词,首先需要安装jieba中文分词,作者给出了如下的 ...
- $好玩的分词——python jieba分词模块的基本用法
jieba(结巴)是一个强大的分词库,完美支持中文分词,本文对其基本用法做一个简要总结. 安装jieba pip install jieba 简单用法 结巴分词分为三种模式:精确模式(默认).全模式和 ...
随机推荐
- TouTiao开源项目 分析笔记5
1.深入理解RxJava 1.1.基本上现在的APP都会有请求网络,然后处理回调的业务吧. 如果请求的数据很多,业务越来越复杂,怎么处理呢? 这里我用到了RxJava来帮我处理业务. RxJava主要 ...
- LinkedHashMap和HashMap的比较使用 详解
由于现在项目中用到了LinkedHashMap,并不是太熟悉就到网上搜了一下. import java.util.HashMap; import java.util.Iterator; import ...
- RegisterWindowMessage
RegisterWindowMessage function Defines a new window message that is guaranteed to be unique throug ...
- Eclipse 菜单---Eclipse教程第04课
Eclipse 查看的菜单栏通常包含以下几个菜单: File 菜单 Edit 菜单 Navigate 菜单 Search 菜单 Project 菜单 Run 菜单 Window 菜单 Help 菜单 ...
- <<程序猿健康指南>> 笔记
序言: 长时间对着电脑工 作.一天下来基本不怎么走动的人,患高血压及 2 型糖尿病的风险远高于其他人群, 这两种疾病会对人体的健康产生长久的严重影响,还会增加心脏病及中风的几率. 前言: 阿米什人(A ...
- 怎么用 copy 关键字?
NSString.NSArray.NSDictionary等等经常使用copy关键字,是因为他们有对应的可变类型:NSMutableString.NSMutableArray.NSMutableDic ...
- 用gulp清除、移动、压缩、合并、替换代码
之前前端代码部署时用的是grunt,后来又出了个gulp工具,最近试用了一下,很方便,感觉比grunt简单好用,下面把一些常见的任务列一下,备用. var gulp = require('gulp') ...
- Python 列表、元组、字典及集合操作详解
一.列表 列表是Python中最基本的数据结构,是最常用的Python数据类型,列表的数据项不需要具有相同的类型 列表是一种有序的集合,可以随时添加和删除其中的元素 列表的索引从0开始 1.创建列表 ...
- Linq中Count()和Any()引发的效率问题
1.count和any 今天看了鹤冲天的文章:Linq:切勿使用 Count() > 0 来判断集合非空 有所收获,写下文章总结一下: 先看如下代码: static void Main(st ...
- 遍历列表,打印:我叫name,今年age岁,家住dizhi,电话phone(我是通过下标取键得到对应值,有哪位大神来个更简单的)
lt = [ {'name':'小王', 'age':18, 'info':[('phone', '123'), ('dizhi', '广州')]}, {'name':'小芳', 'age':19, ...