使用python对文件中的单词进行提取的方法示例


Posted in Python onDecember 21, 2018

由于需要使用一个纯单词组成的文件,在网上下载到了一个存放单词的文件,但是里面有中文的解释,那就需要做一下提取了。

文本的形式如下:

使用python对文件中的单词进行提取的方法示例

所见即所得,这个文本是有规律的,每个单词为一行,紧接着下一行便是单词的解释,有了这种规律我们就很好处理了。

首先我们来将文件的数据读取出来:

#coding:utf-8
file_object = open('words.txt')
try:
   lines = file_object.readlines()
finally:
   file_object.close( )
for line in lines:
  print line

代码执行的结果为:

使用python对文件中的单词进行提取的方法示例         

显然,这不是我们想要的结果,因为这里面有太多的空行了,现在最主要的就是要处理掉这些妨碍我们的空行,对于中文的乱码呢,我们是不需要中文的解释的,所以它是无妨碍的,如果想看得舒服些,那么我们就转码一下就好了。现在最主要的就是要知道为什么会出现这么多的空行,因为我们的文件是已将看过了,显然是这些空行的出现是有点“匪夷所思”的,这也是由于python读文件的机制导致的,下面我们修改下代码,来看看原因:

#coding:utf-8 
file_object = open('words.txt')
try:
   lines = file_object.readlines()
finally:
   file_object.close( ) 
print lines

在这里,我们直接输出lines,得到如下的结果:

使用python对文件中的单词进行提取的方法示例       

我们随意拿出这句'runlet\n', 'n.\xcd\xb0,\xd0\xa1\xba\xd3\n', '\n', 'runnel\n', 'n.\xd0\xa1\xba\xd3,\xcf\xb8\xc1\xf7\n', '\n',从中可以看出,对于每行的文件,在读取的时候,换行符“\n”也是会被读取在单词和对应的解释的后面的,所以这也就是为什么会有那么多空行的原因了,这显然不是我们想要看见的,下面我们处理一下,让这些多余的空行失去效果:

#coding:utf-8 
file_object = open('words.txt')
try:
   lines = file_object.readlines()
finally:
   file_object.close( )
 
for line in lines:
  if line!='\n':
    print line.decode('gb2312','ignore'),  #逗号得带着,因为文件自身带了换行,可以代替pirnt的换行

程序执行后,得到如下的结果:

使用python对文件中的单词进行提取的方法示例

好了,这下就是我们想看到的东西了,那么,现在我们可以将这些输出写入 到新的文件里了,然后就可以得到我们想要的单词文本了。

#coding:utf-8 
file_object = open('words.txt')
try:
   lines = file_object.readlines()
finally:
   file_object.close( )
 
myfile=open('newfile.txt','w')
num=0
for word in lines:
  if word!='\n':
    num+=1
    if num%2:  #只有奇数行为单词
      myfile.write(word)

运行程序便可以得到新的单词文件了,最终提取了45000多个单词,文件如下所示:

使用python对文件中的单词进行提取的方法示例

很显然,满足我们最终想要实现的要求,那么可以收工了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python33 urllib2使用方法细节讲解
Dec 03 Python
Python2.x中str与unicode相关问题的解决方法
Mar 30 Python
Python构建XML树结构的方法示例
Jun 30 Python
教你用一行Python代码实现并行任务(附代码)
Feb 02 Python
20个常用Python运维库和模块
Feb 12 Python
在CMD命令行中运行python脚本的方法
May 12 Python
python3.5安装python3-tk详解
Apr 26 Python
python批量读取文件名并写入txt文件中
Sep 05 Python
python实现的config文件读写功能示例
Sep 24 Python
如何基于python测量代码运行时间
Dec 25 Python
浅谈python输出列表元素的所有排列形式
Feb 26 Python
Python调用系统命令os.system()和os.popen()的实现
Dec 31 Python
Python类装饰器实现方法详解
Dec 21 #Python
Python实现的字典排序操作示例【按键名key与键值value排序】
Dec 21 #Python
Python简单获取二维数组行列数的方法示例
Dec 21 #Python
python进行TCP端口扫描的实现
Dec 21 #Python
Python实现将多个空格换为一个空格.md的方法
Dec 20 #Python
python解析json串与正则匹配对比方法
Dec 20 #Python
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
Dec 20 #Python
You might like
PHP+DBM的同学录程序(5)
2006/10/09 PHP
php smarty模版引擎中变量操作符及使用方法
2009/12/11 PHP
PHP Yaf框架的简单安装使用教程(推荐)
2016/06/08 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
Mootools 1.2教程 选项卡效果(Tabs)
2009/09/15 Javascript
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
jquery中常用的函数和属性详细解析
2014/03/07 Javascript
在JavaScript中操作数组之map()方法的使用
2015/06/09 Javascript
基于javascript实现根据身份证号码识别性别和年龄
2016/01/22 Javascript
基于canvas实现的钟摆效果完整实例
2016/01/26 Javascript
深入解析js轮播插件核心代码的实现过程
2017/04/14 Javascript
浅谈vue中慎用style的scoped属性
2017/11/28 Javascript
webpack配置打包后图片路径出错的解决
2018/04/26 Javascript
详解Node.js使用token进行认证的简单示例
2020/05/25 Javascript
js 实现碰撞检测的示例
2020/10/28 Javascript
微信小程序基于ColorUI构建皮皮虾短视频去水印组件
2020/11/04 Javascript
Python文件读取的3种方法及路径转义
2015/06/21 Python
python直接访问私有属性的简单方法
2016/07/25 Python
Python实现的HMacMD5加密算法示例
2018/04/03 Python
对numpy的array和python中自带的list之间相互转化详解
2018/04/13 Python
numpy.linspace 生成等差数组的方法
2018/07/02 Python
Python实现的txt文件去重功能示例
2018/07/07 Python
使用Python监视指定目录下文件变更的方法
2018/10/15 Python
django实现HttpResponse返回json数据为中文
2020/03/27 Python
Jupyter Notebook折叠输出的内容实例
2020/04/22 Python
css3 按钮 利用css3实现超酷下载按钮
2013/03/18 HTML / CSS
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
幼儿园教师的自我评价范文
2014/09/17 职场文书
2014年销售经理工作总结
2014/12/01 职场文书
导游欢迎词范文
2015/01/23 职场文书
会计人员岗位职责
2015/02/03 职场文书
西安导游词
2015/02/12 职场文书
产品调价通知函
2015/04/20 职场文书
三严三实·严以用权心得体会
2016/01/12 职场文书
Python基础之元编程知识总结
2021/05/23 Python
mysql序号rownum行号实现方式
2022/12/24 MySQL