python提取具有某种特定字符串的行数据方法
时间:2018-12-11
今天小编就为大家分享一篇python提取具有某种特定字符串的行数据方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天又帮女朋友处理了一下,她的实验数据,因为python是一年前经常用,最近找工作,用的是c,c++,python的有些东西忘记了,然后就一直催我,说我弄的慢,弄的慢,你自己弄啊,烦不烦啊,逼逼叨叨的,最后还不是我给弄好的?呵呵
好的,数据是这样的,我截个图
我用红括号括起来的,就是我所要提取的数据
其中lossstotal.txt是我要提取的原始数据,考虑两种方法去提取,前期以为所要提取行的数据是有一定规律的,后来发现,并不是,所以,我考虑用正则来提取,经过思考以后,完成了数据的提取,如下午所示,数据变的非常好看
代码如下:
#coding:utf-8 #__author__ ='dell' import re f1=file('losstotal.txt','r') data1=f1.readlines() # print data1 f1.close() results = [] f2 = open('loss2.txt', 'w') # # 按照特定行提取,发现后面的行并无规律 # i = 0 # for line in data1: # i+=1 # # print line # if((i-1)%3==0): # f2.write(line) # print line # 利用正则表达式 for line in data1: data2=line.split() # print data2 for i in data2: n = re.findall(r"Iteration", i) # m=re.findall(r"loss", i) if n: # print line f2.writelines(line) f2.close() f3=file('loss2.txt','r') data3=f3.readlines() # print data1 f3.close() f4 = open('loss3.txt', 'w') for line in data3: data4=line.split() # print data2 for i in data4: n = re.findall(r"loss", i) # m=re.findall(r"loss", i) if n: print line f4.writelines(line) f4.close() # 去掉逗号 f5=open('loss3.txt','r') data5=f5.read() f5=data5.replace(',',' ') f6=file('lossfinal.txt','w') f6.write(f5) f6.close() # # 去掉等号= f7=open('lossfinal.txt','r') data7=f7.read() f7=data7.replace('=',' ') f8=file('lossfinal.txt','w') f8.write(f7) f8.close() # data3=lin.split() # for j in data3: # m=re.findall(r"loss",i) # if m: # print lin # # m=re.findall(r"sgd_solver.cpp",i) # n=re.findall(r"Iteration",i)
我在同样的目录下,还建立了
这几个txt文件,要不然,代码跑不通的哟。
解释:我连续用了两个正则,各自把含有特定字符串的行进行提取,两个写一起,发现还是不太会,所以分开写了,但是结果还是完成的不错!
以上这篇python提取具有某种特定字符串的行数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
- 围棋之幸?围棋之悲?史上最年轻“五冠王”柯洁宣布再战AI
- spring 在Thread中注入@Resource失败,总为null的解决方案
- ActiveMQ笔记(3):基于Networks of Brokers的HA方案
- HTML5 Video Player概览
- 统计01:概述
- ActiveMQ笔记(2):基于ZooKeeper的HA方案
- ActiveMQ笔记(2):基于ZooKeeper的HA方案
- CSS几个竖直与水平居中盒子模型
- ZooKeeper 笔记(6) 分布式锁
- Hadoop(十五)MapReduce程序实例
- dubbox 的各种管理和监管
- bash魔法堂:History用法详解
- 大众点评cat系统的搭建笔记
- 我们只能在安全和隐私之间寻求平衡吗?
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法