python使用jieba实现中文分词去停用词方法示例

yipeiwu_com7年前Python基础

前言

jieba 基于Python的中文分词工具,安装使用非常方便,直接pip即可,2/3都可以,功能强悍,十分推荐。

中文分词(Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。

分词模块jieba,它是python比较好用的分词模块。待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意:不建议直接输入 GBK 字符串,可能无法预料地错误解码成 UTF-8

支持三种分词模式

      1 精确模式,试图将句子最精确地切开,适合文本分析;

      2 全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;

      3 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。

# 精确模式 seg_list = jieba.cut("我去过清华大学和北京大学。")

# 全模式 seg_list = jieba.cut("我去过清华大学和北京大学。", cut_all=True)

# 搜索引擎模式 seg_list = jieba.cut_for_search("我去过清华大学和北京大学。")

#精确模式: 我/ 去过/ 清华大学/ 和/ 北京大学/ 。

#全模式: 我/ 去过/ 清华/ 清华大学/ 华大/ 大学/ 和/ 北京/ 北京大学/ 大学/ /

#搜索引擎模式: 我/ 去过/ 清华/ 华大/ 大学/ 清华大学/ 和/ 北京/ 大学/ 北京大学/

#coding=utf-8
import jieba. analyse
stopwords=[]
for word in open('stopwords.txt','r'):
 stopwords.append(word.strip())
article=open('1.txt','r').read()
words=jieba.cut(article,cut_all=False)
stayed_line=""
for word in words:
 if word.encode("utf-8")not in stopwords:
  stayed_line+=word+" "
print stayed_line
w=open('2.txt','w')
w.write(stayed_line.encode('utf-8'))

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python实现改变与矩形橡胶的线条的颜色代码示例

Python实现改变与矩形橡胶的线条的颜色代码示例

 与矩形相交的线条颜色为红色,其他为蓝色。 演示如下: 实例代码如下: import numpy as np import matplotlib.pyplot as pl...

python requests 库请求带有文件参数的接口实例

python requests 库请求带有文件参数的接口实例

有些接口参数是一个文件格式,比如fiddler 抓包参数如下显示 这个接口的 form-data fiddler 显示的和不带文件参数的接口有明显区别,显示的不是简单的键值对,所以我们...

python3.4+pycharm 环境安装及使用方法

python3.4+pycharm 环境安装及使用方法

遇到很多初学者的盆友,来问python环境安装的问题。。因此,这篇文章就诞生了。。 因个人是windows的环境,所以本文只讲windows环境下的python安装。 作为初用pytho...

浅析使用Python操作文件

1. file=open('xxx.txt', encoding='utf-8'),open()函数是Python内置的用于对文件的读写操作,返回的是文件的流对象(而不是文件本身,所以使...

Python中Collection的使用小技巧

本文所述实例来自独立软件开发者 Alex Marandon,在他的博客中曾介绍了数个关于 Python Collection 的实用小技巧,在此与大家分享。供大家学习借鉴之用。具体如下:...