python从入门到大神---Python的jieba模块简介

一、总结

一句话总结:

jieba包是分词技术,也就是将一句话分成多个词,有多种分词模型可选

1、分词模块包一般有哪些分词模式(比如python的jieba包分'我想和女朋友一起去北京天安门闲逛。。')?

精确模式:jieba.cut(s):词只分一次:我,想,和,女朋友,一起,去,北京,天安门,闲逛,。,。
全模式:jieba.cut(s,cut_all = True):尽量将所有的词拿出来:我,想,和,女朋友,朋友,一起,去,北京,天安,天安门,闲逛,,,
搜索引擎模式:jieba.cut_for_search(s):我,想,和,朋友,女朋友,一起,去,北京,天安,天安门,闲逛,。,。

2、分词模块包比如jieba,可以查看词的词性么?

可以:x.flag:print([(x.word,x.flag) for x in psg.cut(s)])

二、Python的jieba模块简介

转自或参考:Python的jieba模块简介
https://www.cnblogs.com/yuxuanlian/p/9781792.html

现如今,词云技术遍地都是,分词模块除了jieba也有很多,主要介绍一下jieba的基本使用

import jieba
import jieba.posseg as psg
from os import path
from collections import Counter s=u'我想和女朋友一起去北京天安门闲逛。。' cut = jieba.cut(s) print('精确模式')
print(cut)
print(','.join(cut)) print ('全模式')
print(','.join(jieba.cut(s,cut_all = True))) print('搜索引擎模式')
print(','.join(jieba.cut_for_search(s))) print('词性')
print([(x.word,x.flag) for x in psg.cut(s)])
print([(x.word,x.flag) for x in psg.cut(s) if x.flag.startswith('n')]) print('--*--'*10)
seg_list = jieba.cut("我来到北京清华大学", cut_all=True)
print("Full Mode:", "/ ".join(seg_list)) # 全模式 seg_list = jieba.cut("我来到北京清华大学", cut_all=False)
print("Default Mode:", "/ ".join(seg_list)) # 精确模式 seg_list = jieba.cut("他来到了网易杭研大厦") # 默认是精确模式
print(", ".join(seg_list)) seg_list = jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造") # 搜索引擎模式
print(", ".join(seg_list)) d=path.dirname(__file__)
sanguo_text=open(path.join(d,"data//sanguo.txt"),encoding='utf-8').read()
print(len(sanguo_text)) sanguo_words = [x for x in jieba.cut(sanguo_text) if len(x) >= 2]
c = Counter(sanguo_words).most_common(20)
print(c)

运行结果

其中精确模式比较好用,全模式就是尽量将所有的词拿出来

 
D:\software\coding\python\python.exe E:/Coding_Folder/python/first_test/jieba_tset.py
精确模式
<generator object Tokenizer.cut at 0x02F76830>
Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\FANREN~1\AppData\Local\Temp\jieba.cache
Loading model cost 0.706 seconds.
Prefix dict has been built succesfully.
我,想,和,女朋友,一起,去,北京,天安门,闲逛,。,。
全模式
我,想,和,女朋友,朋友,一起,去,北京,天安,天安门,闲逛,,,
搜索引擎模式
我,想,和,朋友,女朋友,一起,去,北京,天安,天安门,闲逛,。,。
词性
[('我', 'r'), ('想', 'v'), ('和', 'c'), ('女朋友', 'n'), ('一起', 'm'), ('去', 'v'), ('北京', 'ns'), ('天安门', 'ns'), ('闲逛', 'v'), ('。', 'x'), ('。', 'x')]
[('女朋友', 'n'), ('北京', 'ns'), ('天安门', 'ns')]
--*----*----*----*----*----*----*----*----*----*--
Full Mode: 我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学
Default Mode: 我/ 来到/ 北京/ 清华大学
他, 来到, 了, 网易, 杭研, 大厦
小明, 硕士, 毕业, 于, 中国, 科学, 学院, 科学院, 中国科学院, 计算, 计算所, ,, 后, 在, 日本, 京都, 大学, 日本京都大学, 深造
 
 

python从入门到大神---Python的jieba模块简介的更多相关文章

  1. python从入门到大神---4、python3文件操作最最最最简单实例

    python从入门到大神---4.python3文件操作最最最最简单实例 一.总结 一句话总结: python文件操作真的很简单,直接在代码中调用文件操作的函数比如open().read(),无需引包 ...

  2. python从入门到大神---2、和Python编程相遇的日子

    python从入门到大神---2.和Python编程相遇的日子 一.总结 一句话总结: python2和python3是很不同的,连语法都不同,比如 print 函数打印结果 1.python中pip ...

  3. python从入门到大神---3、浮光掠影python3语法

    python从入门到大神---3.浮光掠影python3语法 一.总结 一句话总结: 语法不必一次记全部,效率太差,用哪部分内容,就把那部分内容全部记下来 1.python3中单引号和双引号的区别是什 ...

  4. python从入门到大神---1、初始化实例、类属性、方法

    python从入门到大神---1.初始化实例.类属性.方法 一.总结 一句话总结: 方法不加括号是代码段:感觉python方法和js,php很类似,不加括号是代码段,加括号变成方法,比如f,f() 1 ...

  5. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  6. Python基础-1 python由来 Python安装入门 注释 pyc文件 python变量 获取用户输入 流程控制if while

    1.Python由来 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚 ...

  7. Python基础入门(9)- Python文件操作

    1.文件的读写 1.1.文件的创建与写入 利用内置函数open获取文件对象 文件操作的模式之写入 文件对象的操作方法之写入保存 1 # coding:utf-8 2 3 import os 4 5 c ...

  8. Python从入门到超神之文件处理

    一.文件处理流程(python默认是utf-8编码) 打开文件函数:open(文件路径,encoding=‘utf-8’)注意:open会检索系统的编码,所以需要调整一致否则报错 例如:fi=open ...

  9. Python学习入门基础教程(learning Python)--5.1 Python下文件处理基本过程

    Python下的文件读写操作过程和其他高级语言如C语言的操作过程基本一致,都要经历以下几个基本过程. 1. 打开文件 首先是要打开文件,打开文件的主要目的是为了建立程序和文件之间的联系.按程序访问文件 ...

随机推荐

  1. leetcode-第14周双周赛-1271-十六进制魔术数字

    自己的提交: class Solution: def toHexspeak(self, num: str) -> str: num = hex(int(num)) num = str(num)[ ...

  2. js 暂停几秒后刷新或提交

    js源码如下: setTimeout(function () { //内容3秒后执行 }, 3000);

  3. Robot Framework:环境安装

    Windows Python2.7                                                前置条件:安装python2.7,下载地址:https://www.p ...

  4. thinkphp SAE

    SAE介绍 Sina App Engine(简称SAE)是新浪研发中心开发的国内首个公有云计算平台,是新浪云计算战略的核心组成部分,作为一个简单高效的分布式Web服务开发.运行平台越来越受开发者青睐. ...

  5. delphi 文件分割与合并

    流的使用分割与合并文件的函数 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, ...

  6. API应用实例

    API声明透明 {API声明} type TSetLayeredWindowAttributes = function(wnd: HWND; crKey: DWORD; bAlpha: BYTE; d ...

  7. contest20191023

    slz的题 KCN 雨中的晴天 宫水三叶生活的城市是一个一维平面上的城市.三叶喜欢用一个长度为n的线段来表示这座城市.线段上(包含端点)平均分布着 $n+1$ 个点,其中第 $i$ 个点到第 $i+1 ...

  8. hihoCoder [Offer收割]编程练习赛3 D子矩阵求和

    子矩阵求和 http://hihocoder.com/discuss/question/3005 声明一下: n是和x一起的,m是和y一起的 x是横着的,y是纵着的,x往右为正,y往下为正 (非常反常 ...

  9. SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS")时间转换问题

    SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS")时间转换问题 程序代码: import java.text.ParseException; i ...

  10. $.ajax(),传参要用data

    $("#modal").find(".btn-primary").unbind("click").click(function(){ var ...