python 读写txt文件并用jieba库进行中文分词
python用来批量处理一些数据的第一步吧。
对于我这样的的萌新。这是第一步。
#encoding=utf-8 file='test.txt' fn=open(file,"r") print fn.read() fn.close()
在控制台输出txt文档的内容,注意中文会在这里乱码。因为和脚本文件放在同一个地方,我就没写路径了。
还有一些别的操作。
这是文件open()函数的打开mode,在第二个参数中设置。特别需要注意一下。具体还有一些别的细节操作。
http://www.jb51.net/article/87398.htm
可以具体看上面这个博主,自己做test熟悉。我只是做一个简单的操作test。
这里用jieba库,对文档做一个中文分词的操作,以便我们以后对这些txt文档进行更好的分类操作。
http://www.oschina.net/p/jieba/?fromerr=5wT4rbGx
具体可以看这个。jieba库的安装很方便,只要安装了pip,配置好了环境变量。
在命令行输入
pip install jieba
就可以自行安装了。
我试了他的几个函数,不知道为什么不能正常地在txt文档输出结果。= =只有一个可以正常使用。
(2017.05.19补充:其中所有的函数都可以在txt文档输出结果,只需要在前面加上三行代码即可。)
import sys reload(sys) sys.setdefaultencoding( "utf-8" )
具体原因可以参照http://www.cnblogs.com/weedboy/p/6862158.html
#encoding=utf-8 import jieba import jieba.posseg as pseg import re filename='result.txt' fileneedCut='test.txt' fn=open(fileneedCut,"r") f=open(filename,"w+") for line in fn.readlines(): words=pseg.cut(line) for w in words: print >>f,str(w) f.close() fn.close()
把需要分词的txt放到脚本同一目录就好了。
后面是词的属性,左边是test文件,右边reault文件,和最流行的ICTCLAS的分词后属性貌似是一致的。= =。有点迷。