Python中文分词工具之结巴分词用法实例总结【经典案例】

yipeiwu_com6年前Python基础

本文实例讲述了Python中文分词工具之结巴分词用法。分享给大家供大家参考,具体如下:

结巴分词工具的安装及基本用法,前面的文章《Python结巴中文分词工具使用过程中遇到的问题及解决方法》中已经有所描述。这里要说的内容与实际应用更贴近——从文本中读取中文信息,利用结巴分词工具进行分词及词性标注。

示例代码如下:

#coding=utf-8
import jieba
import jieba.posseg as pseg
import time
t1=time.time()
f=open("t_with_splitter.txt","r") #读取文本
string=f.read().decode("utf-8")
words = pseg.cut(string) #进行分词
result="" #记录最终结果的变量
for w in words:
   result+= str(w.word)+"/"+str(w.flag) #加词性标注
f=open("t_with_POS_tag.txt","w") #将结果保存到另一个文档中
f.write(result)
f.close()
t2=time.time()
print("分词及词性标注完成,耗时:"+str(t2-t1)+"秒。") #反馈结果

其中t_with_splitter.txt文件内容如下:

【听图阁-专注于Python设计】是国内专业的网站建设资源、脚本编程学习类网站,提供asp、php、asp.net、javascript、jquery、vbscript、dos批处理、网页制作、网络编程、网站建设等编程资料。

Python2.7.9平台运行后出现如下图所示的错误提示

查阅相关资料后发现,需要在开头加上:

import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )

最终代码应为:

#coding=utf-8
import jieba
import jieba.posseg as pseg
import time
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )
t1=time.time()
f=open("t_with_splitter.txt","r") #读取文本
string=f.read().decode("utf-8")
words = pseg.cut(string) #进行分词
result="" #记录最终结果的变量
for w in words:
   result+= str(w.word)+"/"+str(w.flag) #加词性标注
f=open("t_with_POS_tag.txt","w") #将结果保存到另一个文档中
f.write(result)
f.close()
t2=time.time()
print("分词及词性标注完成,耗时:"+str(t2-t1)+"秒。") #反馈结果

运行成功:

Editplus打开t_with_POS_tag.txt文件如下图所示:

更多关于Python相关内容可查看本站专题:《Python字典操作技巧汇总》、《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python求两点之间的直线距离(2种实现方法)

方法一: #导入math包 import math #定义点的函数 class Point: def __init__(self,x=0,y=0): self.x=x...

简单的连接MySQL与Python的Bottle框架的方法

Python关于mySQL的连接插件众多,Bottle下也有人专门开发的插件:bottle-mysql具体使用方法见官方,总共感觉其用法限制太多,其使用起来不方便,最适合的当然是,myS...

Python中的groupby分组功能的实例代码

Python中的groupby分组功能的实例代码

pandas中的DataFrame中可以根据某个属性的同一值进行聚合分组,可以选单个属性,也可以选多个属性: 代码示例: import pandas as pd A=pd.DataF...

在python的WEB框架Flask中使用多个配置文件的解决方法

有些框架本身就支持多配置文件,例如Ruby On Rails,nodejs下的expressjs。python下的Flask虽然本身支持配置文件管理, 但单纯使用from_object和...

python模拟菜刀反弹shell绕过限制【推荐】

有的时候我们在获取到目标电脑时候如果对方电脑又python 编译环境时可以利用python 反弹shell 主要用到python os库和sokect库 这里的服务端在目标机上运行...