使用python读取.text文件特定行的数据方法


Posted in Python onJanuary 28, 2019

如何用python循环读取下面.txt文件中,用红括号标出来的数据呢?

使用python读取.text文件特定行的数据方法

首先,观察数据可知,不同行的第一个数据元素不一样,所以考虑直接用正则表达式。

再加上,对读和写文件的操作,就行了

注:我用的是pycharm+python2.7

话不多说,直接上代码

import re
 
f1=file('shen.txt','r')
data1=f1.readlines()
# print data1
f1.close()
results = []
 
for line in data1:
 data2=line.split()
 # print data2[0]
 m = re.findall(r"[0-9]:", data2[0])
 if m:
  results.append(line)
 
 # for i in data2[0]:
  # data3=i.split(":")
  # print data3
  # if data3>=0 and data3<=50000:
  #  results.append(line)
 
 
  # if i=='1':
  #  results.append(line)
 
 
f2=file('deal.txt','w')
f2.writelines(results)
f2.close()

前期,我遇到“1:”这样的字符串实在是没办法处理,后来查找资料,发现有正则这么爽的东西!

在上面的代码中,需要说明的是:

m = re.findall(r"[0-9]:", data2[0])

该语句的意思就是,对于字符串而言,寻找到能够匹配1:,2:,9:。。。。。。的字符串

最后处理的结果是:

使用python读取.text文件特定行的数据方法

由于数据不是很漂亮,还需要将里面的“,”和“:”这两个符号去掉,因此,我使用了replace语句

代码如下:

#coding:utf-8
#__author__ ='dell'
 
import re
 
f1=file('shen.txt','r')
data1=f1.readlines()
# print data1
f1.close()
results = []
 
for line in data1:
 data2=line.split()
 # print data2[0]
 m = re.findall(r"[0-9]:", data2[0])
 if m:
  results.append(line)
 
 # for i in data2[0]:
  # data3=i.split(":")
  # print data3
  # if data3>=0 and data3<=50000:
  #  results.append(line)
 
 
  # if i=='1':
  #  results.append(line)
 
f2=file('deal.txt','w')
f2.writelines(results)
f2.close()
 
# 替换掉所有的逗号,
f4=open('deal.txt','r')
data3=f4.read()
f4=data3.replace(',',' ')
f5=file('deal.txt','w')
f5.write(f4)
f5.close()
 
# 替换掉所有的冒号
f6=open('deal.txt','r')
data4=f6.read()
f6=data4.replace(':',' ')
f7=file('deal.txt','w')
f7.write(f6)
f7.close()

最终,得到的数据就很漂亮了,如下所示:

使用python读取.text文件特定行的数据方法

以上这篇使用python读取.text文件特定行的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
对python中的iter()函数与next()函数详解
Oct 18 Python
django配置连接数据库及原生sql语句的使用方法
Mar 03 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
Jun 24 Python
python 实现GUI(图形用户界面)编程详解
Jul 17 Python
python爬虫 urllib模块发起post请求过程解析
Aug 20 Python
Python 实现自动导入缺失的库
Oct 29 Python
Django Form and ModelForm的区别与使用
Dec 06 Python
pytorch 使用加载训练好的模型做inference
Feb 20 Python
python 按钮点击关闭窗口的实现
Mar 04 Python
python中如何设置代码自动提示
Jul 15 Python
为什么说python更适合树莓派编程
Jul 20 Python
Python word文本自动化操作实现方法解析
Nov 05 Python
python 实现一次性在文件中写入多行的方法
Jan 28 #Python
用Python逐行分析文件方法
Jan 28 #Python
Python使用Shelve保存对象方法总结
Jan 28 #Python
Python理解递归的方法总结
Jan 28 #Python
代码详解django中数据库设置
Jan 28 #Python
Python控制键盘鼠标pynput的详细用法
Jan 28 #Python
用python 实现在不确定行数情况下多行输入方法
Jan 28 #Python
You might like
论坛头像随机变换代码
2006/10/09 PHP
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
2015/04/14 PHP
PHP中empty,isset,is_null用法和区别
2017/02/19 PHP
JavaScript 常用函数
2009/12/30 Javascript
JS执行删除前的判断代码
2014/02/18 Javascript
JavaScript组件焦点与页内锚点间传值的方法
2015/02/02 Javascript
JavaScript实现多个重叠层点击切换效果的方法
2015/04/24 Javascript
JQuery插件ajaxfileupload.js异步上传文件实例
2015/05/19 Javascript
浅谈Jquery核心函数
2015/06/18 Javascript
JavaScript实现基于十进制的四舍五入实例
2015/07/17 Javascript
window.location.reload 刷新使用分析(去对话框)
2015/11/11 Javascript
Jquery操作cookie记住用户名
2016/03/29 Javascript
同步异步动态引入js文件的几种方法总结
2016/09/23 Javascript
vue-hook-form使用详解
2017/04/07 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
使用vue的transition完成滑动过渡的示例代码
2018/06/25 Javascript
玩转Koa之核心原理分析
2018/12/29 Javascript
详解es6新增数组方法简便了哪些操作
2019/05/09 Javascript
VUEX采坑之路之获取不到$store的解决方法
2019/11/08 Javascript
[29:16]完美世界DOTA2联赛决赛日 Inki vs LBZS 第三场 11.08
2020/11/10 DOTA
Python自定义scrapy中间模块避免重复采集的方法
2015/04/07 Python
Django + Uwsgi + Nginx 实现生产环境部署的方法
2018/06/20 Python
Python读取stdin方法实例
2019/05/24 Python
python3 使用traceback定位异常实例
2020/03/09 Python
keras读取训练好的模型参数并把参数赋值给其它模型详解
2020/06/15 Python
python学习笔记之多进程
2020/08/06 Python
New delete 与malloc free 的联系与区别
2013/02/04 面试题
农业大学毕业生的个人自我评价
2013/10/11 职场文书
学院书画协会部门岗位职责
2013/12/01 职场文书
工程业务员岗位职责
2013/12/31 职场文书
化学教师教学反思
2014/01/17 职场文书
领导接待方案
2014/03/13 职场文书
教师个人培训总结
2015/02/11 职场文书
2016党性教育学习心得体会
2016/01/21 职场文书
竞聘演讲报告:基本写作有哪些?附开头范文
2019/10/16 职场文书
nodejs利用readline提示输入内容实例代码
2021/07/15 NodeJs