2019.3.22毕设之python小白第一课--jieba分词

<textarea readonly="readonly" name="code" class="Python">
from collections import Counter
import jieba
with open('E:/bishe/ceshi.txt','r')as f:    #打开要分词的文件
    for line in f:
        seg = jieba.cut(line.strip(),cut_all = False)
        output = '/'.join(seg)
        with open('E:/bishe/text1.txt','a+')as s:
            s.write(output)
</textarea>
inputs = open('ceshi.txt', 'r') #加载要处理的文件的路径   r读入文件
outputs = open('wordseg.txt', 'w') #加载处理后的文件路径  w写入文件

分词涉及到的方法:

  • 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直接返回 list
  • jieba.Tokenizer(dictionary=DEFAULT_DICT)新建自定义分词器,可用于同时使用不同词典。jieba.dt 为默认分词器,所有全局分词相关函数都是该分词器的映射。

代码内容来自博主:
https://blog.csdn.net/qq_19741181/article/details/79823489

会出错的情况:
1、pynlpir.LicenseError: Your license appears to have expired. Try running “pynlpir update”.
解决:这说明你的NLPIR授权过期了,这个时候需要到github的license地址下载新的NLPIR.user;然后覆盖DATA文件夹中的原文件(NLPIR.user)即可
2、AttributeError: ‘str’ object has no attribute ‘decode’
python2和3不兼容的问题,解决:
stop = [line.strip().decode('utf-8') for line in open('stopwords.txt').readlines() ]改为:
stop = [line.strip().encode('utf-8').decode('utf-8') for line in open('stopwords.txt').readlines() ]

学习网站:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值