使用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 相关文章推荐
Python httplib,smtplib使用方法
Sep 06 Python
python中的yield使用方法
Feb 11 Python
Python标准库与第三方库详解
Jul 22 Python
Python升级导致yum、pip报错的解决方法
Sep 06 Python
人脸识别经典算法一 特征脸方法(Eigenface)
Mar 13 Python
python生成九宫格图片
Nov 19 Python
python实现批量文件重命名
Oct 31 Python
python如何通过pyqt5实现进度条
Jan 20 Python
python读取图片的几种方式及图像宽和高的存储顺序
Feb 11 Python
深入了解NumPy 高级索引
Jul 24 Python
Numpy数组的广播机制的实现
Nov 03 Python
详解python的xlwings库读写excel操作总结
Feb 26 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
DEDECMS首页调用图片集里的多张图片
2015/06/05 PHP
PHP/HTML混写的四种方式总结
2017/02/27 PHP
Redis构建分布式锁
2017/03/28 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
在 IE 中调用 javascript 打开 Excel 表
2006/12/21 Javascript
理解Javascript_13_执行模型详解
2010/10/20 Javascript
深入理解JSON数据源格式
2014/01/10 Javascript
探索angularjs+requirejs全面实现按需加载的套路
2016/02/26 Javascript
JavaScript动态生成二维码图片
2016/04/20 Javascript
深入理解JS正则表达式---分组
2016/07/18 Javascript
JS数字千分位格式化实现方法总结
2016/12/16 Javascript
关于微信上网页图片点击全屏放大效果
2016/12/19 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
2018/01/09 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
2018/07/12 Javascript
django使用channels2.x实现实时通讯
2018/11/28 Javascript
浅谈javascript错误处理
2019/08/11 Javascript
微信小程序整个页面的自动适应布局的实现
2020/07/12 Javascript
python连接MySQL数据库实例分析
2015/05/12 Python
Python实现的排列组合、破解密码算法示例
2019/04/12 Python
Python pandas用法最全整理
2019/08/04 Python
python 利用pyttsx3文字转语音过程详解
2019/09/25 Python
python实现按关键字筛选日志文件
2019/12/24 Python
Python+redis通过限流保护高并发系统
2020/04/15 Python
水果花束:Fruit Bouquets
2017/12/20 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
DC Shoes俄罗斯官网:美国滑板鞋和服饰品牌
2020/08/19 全球购物
三爱活动实施方案
2014/03/19 职场文书
专题组织生活会发言材料
2014/10/17 职场文书
门卫岗位职责
2015/02/09 职场文书
三八妇女节新闻稿
2015/07/17 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书
Python基础之数据类型知识汇总
2021/05/18 Python
mybatis 获取无数据的字段不显示的问题
2021/07/15 Java/Android
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers