zoukankan      html  css  js  c++  java
  • Python3.6 结巴分词安装和使用

    由于我安装的是 Python3 ,所以我是通过 pip3 来安装 jieba 分词模块:

    1 pip3 install jieba

    执行完上面的一步之后,我们就已经成功安装了 jieba 分词模块了,以下我们来进行一个简单的测试,看看我们是否安装成功:

     1 # -*- coding: utf-8 -*-
     2 
     3 # 引入结巴分词模块
     4 import jieba
     5 
     6 # 定义字符串
     7 s = u'杭州今天天气如何?'
     8 
     9 # 调用 jieba 分词的 cut 分词方法
    10 cut = jieba.cut(s)
    11 
    12 # 输出结果
    13 print('【Output】')
    14 print(cut)
    15 print(','.join(cut))

    下面我们来看看结果:

    由上图可以得出,cut 的结果返回的是一个生成器,最后的分词结果是: 杭州,今天天气,如何,?

    到了这一步,就能证明我们的结巴分词模块已经安装成功了。

    结巴分词的三种模式

    接下来我们需要看看结巴分词的使用,首先介绍结巴分词的三种模式:精确模式、全模式、搜索引擎模式,以下我们举例介绍:

     1 # -*- coding: utf-8 -*-
     2 
     3 # 引入结巴分词模块
     4 import jieba
     5 
     6 # 定义字符串
     7 s = u'我想元旦开车载我女朋友去杭州西湖参观和游玩。路线该怎么走?'
     8 
     9 # 精确模式
    10 print('精确模式:')
    11 print('|'.join(jieba.cut(s)))
    12 print('
    ')
    13 
    14 # 全模式
    15 print('全模式:')
    16 print('|'.join(jieba.cut(s,cut_all = True)))
    17 print('
    ')
    18 
    19 # 搜索引擎模式
    20 print('搜索引擎模式:')
    21 print('|'.join(jieba.cut_for_search(s)))

    由上可见,全模式得到的分词比较多,也比较完全。

    结巴分词词性

    我们知道,每个词语都有其词性,比如:动词、形容词、名词等等,使用结巴分词的 posseg 这个模块,就可以得到每个词的词性,例如:

     1 # -*- coding: utf-8 -*-
     2 
     3 # 引入结巴分词词性模块
     4 import jieba.posseg as psg
     5 
     6 # 定义字符串
     7 s = u'我想元旦开车载我女朋友去杭州西湖参观和游玩。路线该怎么走?'
     8 
     9 # 获取词性
    10 print('分词结果:')
    11 print([(x.word,x.flag) for x in psg.cut(s)])

     

    由上图我们可以成功的得到每个词的词性,这对于我们对分词结果做进一步处理很有帮助,同时,我们还能只获取分词结果列表中的某一类词性,如:获取分词结果列表中的名词,那么我们可以这样过滤:

     1 # -*- coding: utf-8 -*-
     2 
     3 # 引入结巴分词词性模块
     4 import jieba.posseg as psg
     5 
     6 # 定义字符串
     7 s = u'我想元旦开车载我女朋友去杭州西湖参观和游玩。路线该怎么走?'
     8 
     9 # 获取词性是名词的结果
    10 print('获取词性是名词的词语:')
    11 print([(x.word,x.flag) for x in psg.cut(s) if x.flag.startswith('n')])

    以上得到的,就是我们这句话中可能是名词的词语的结果集了。如果要知道每个字母代表什么词性的话,下面我们将来介绍(按词性英文首字母排序):

    1、形容词(1个一类,4个二类)

    a 形容词

    ad 副形词

    an 名形词

    ag 形容词性语素

    al 形容词性惯用语

    2、区别词(1个一类,2个二类)

    b 区别词

    bl 区别词性惯用语

    3、连词(1个一类,1个二类)

    c 连词

    cc 并列连词

    4副词(1个一类)

    d 副词

    5叹词(1个一类)

    e 叹词

    6方位词(1个一类)

    f 方位词

    7前缀(1个一类)

    h 前缀

    8后缀(1个一类)

    k 后缀

    9数词(1个一类,1个二类)

    m 数词

    mq 数量词

    10名词 (1个一类,7个二类,5个三类)

    名词分为以下子类:

    n 名词

    nr 人名

    nr1 汉语姓氏

    nr2 汉语名字

    nrj 日语人名

    nrf 音译人名

    ns 地名

    nsf 音译地名

    nt 机构团体名

    nz 其它专名

    nl 名词性惯用语

    ng 名词性语素

    11拟声词(1个一类)

    o 拟声词

    12介词(1个一类,2个二类)

    p 介词

    pba 介词“把”

    pbei 介词“被”

    13量词(1个一类,2个二类)

    q 量词

    qv 动量词

    qt 时量词

    14代词(1个一类,4个二类,6个三类)

    r 代词

    rr 人称代词

    rz 指示代词

    rzt 时间指示代词

    rzs 处所指示代词

    rzv 谓词性指示代词

    ry 疑问代词

    ryt 时间疑问代词

    rys 处所疑问代词

    ryv 谓词性疑问代词

    rg 代词性语素

    15处所词(1个一类)

    s 处所词

    16时间词(1个一类,1个二类)

    t 时间词

    tg 时间词性语素

    17助词(1个一类,15个二类)

    u 助词

    uzhe 着

    ule 了 喽

    uguo 过

    ude1 的 底

    ude2 地

    ude3 得

    usuo 所

    udeng 等 等等 云云

    uyy 一样 一般 似的 般

    udh 的话

    uls 来讲 来说 而言 说来

    uzhi 之

    ulian 连 (“连小学生都会”)

    18动词(1个一类,9个二类)

    v 动词

    vd 副动词

    vn 名动词

    vshi 动词“是”

    vyou 动词“有”

    vf 趋向动词

    vx 形式动词

    vi 不及物动词(内动词)

    vl 动词性惯用语

    vg 动词性语素

    19标点符号(1个一类,16个二类)

    w 标点符号

    wkz 左括号,全角:( 〔 [ { 《 【 〖 〈 半角:( [ { <

    wky 右括号,全角:) 〕 ] } 》 】 〗 〉 半角: ) ] { >

    wyz 左引号,全角:“ ‘ 『

    wyy 右引号,全角:” ’ 』

    wj 句号,全角:。

    ww 问号,全角:? 半角:?

    wt 叹号,全角:! 半角:!

    wd 逗号,全角:, 半角:,

    wf 分号,全角:; 半角: ;

    wn 顿号,全角:、

    wm 冒号,全角:: 半角: :

    ws 省略号,全角:…… …

    wp 破折号,全角:—— -- ——- 半角:--- ----

    wb 百分号千分号,全角:% ‰ 半角:%

    wh 单位符号,全角:¥ $ £ ° ℃ 半角:$

    20字符串(1个一类,2个二类)

    x 字符串

    xx 非语素字

    xu 网址URL

    21语气词(1个一类)

    y 语气词(delete yg)

    22状态词(1个一类)

    z 状态词

  • 相关阅读:
    loj#2020. 「AHOI / HNOI2017」礼物
    loj#117. 有源汇有上下界最小流
    loj#6491. zrq 学反演
    loj#6261. 一个人的高三楼
    loj#528. 「LibreOJ β Round #4」求和
    2018-2019 ACM-ICPC Brazil Subregional Programming Contest
    2015-2016 ACM-ICPC, NEERC, Moscow Subregional Contest J
    2015-2016 ACM-ICPC Northeastern European Regional Contest (NEERC 15)C
    addEventListener() 和 removeEventListener()
    9个图片滑块动画
  • 原文地址:https://www.cnblogs.com/kafeixiaoluo/p/8460316.html
Copyright © 2011-2022 走看看