python提取具有某種特定字符串的行數(shù)據(jù)方法
今天又幫女朋友處理了一下,她的實(shí)驗(yàn)數(shù)據(jù),因?yàn)閜ython是一年前經(jīng)常用,最近找工作,用的是c,c++,python的有些東西忘記了,然后就一直催我,說我弄的慢,弄的慢,你自己弄啊,煩不煩啊,逼逼叨叨的,最后還不是我給弄好的?呵呵
好的,數(shù)據(jù)是這樣的,我截個(gè)圖
我用紅括號(hào)括起來的,就是我所要提取的數(shù)據(jù)
其中l(wèi)ossstotal.txt是我要提取的原始數(shù)據(jù),考慮兩種方法去提取,前期以為所要提取行的數(shù)據(jù)是有一定規(guī)律的,后來發(fā)現(xiàn),并不是,所以,我考慮用正則來提取,經(jīng)過思考以后,完成了數(shù)據(jù)的提取,如下午所示,數(shù)據(jù)變的非常好看
代碼如下:
#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') # # 按照特定行提取,發(fā)現(xiàn)后面的行并無規(guī)律 # i = 0 # for line in data1: # i+=1 # # print line # if((i-1)%3==0): # f2.write(line) # print line # 利用正則表達(dá)式 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() # 去掉逗號(hào) f5=open('loss3.txt','r') data5=f5.read() f5=data5.replace(',',' ') f6=file('lossfinal.txt','w') f6.write(f5) f6.close() # # 去掉等號(hào)= 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)
我在同樣的目錄下,還建立了
這幾個(gè)txt文件,要不然,代碼跑不通的喲。
解釋:我連續(xù)用了兩個(gè)正則,各自把含有特定字符串的行進(jìn)行提取,兩個(gè)寫一起,發(fā)現(xiàn)還是不太會(huì),所以分開寫了,但是結(jié)果還是完成的不錯(cuò)!
以上這篇python提取具有某種特定字符串的行數(shù)據(jù)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python+OpenCV實(shí)現(xiàn)尋找到圓點(diǎn)標(biāo)定板的角點(diǎn)
這篇文章主要為大家詳細(xì)介紹了Python+OpenCV實(shí)現(xiàn)找到圓點(diǎn)標(biāo)定板所有點(diǎn)后通過距離找兩個(gè)角點(diǎn),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-11-11快速掌握python權(quán)限功能設(shè)計(jì)實(shí)戰(zhàn)指南
在處理權(quán)限控制時(shí),裝飾器能幫助我們以一種統(tǒng)一且簡潔的方式管理不同用戶對(duì)系統(tǒng)資源的訪問權(quán)限,本文將通過幾個(gè)簡單的示例逐步展示如何利用Python裝飾器實(shí)現(xiàn)從基礎(chǔ)到復(fù)雜的權(quán)限控制功能2024-01-01Python:type、object、class與內(nèi)置類型實(shí)例
今天小編就為大家分享一篇Python:type、object、class與內(nèi)置類型實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12python操作docx寫入內(nèi)容,并控制文本的字體顏色
今天小編就為大家分享一篇python操作docx寫入內(nèi)容,并控制文本的字體顏色,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02Pandas分組聚合之groupby()、agg()方法的使用教程
今天看到pandas的聚合函數(shù)agg,比較陌生,平時(shí)的工作中處理數(shù)據(jù)的時(shí)候使用的也比較少,為了加深印象,總結(jié)一下使用的方法,下面這篇文章主要給大家介紹了關(guān)于Pandas分組聚合之groupby()、agg()方法的使用教程,需要的朋友可以參考下2023-01-01Python基于BeautifulSoup和requests實(shí)現(xiàn)的爬蟲功能示例
這篇文章主要介紹了Python基于BeautifulSoup和requests實(shí)現(xiàn)的爬蟲功能,結(jié)合實(shí)例形式分析了Python使用BeautifulSoup和requests庫爬取網(wǎng)站指定信息的相關(guān)操作技巧,需要的朋友可以參考下2019-08-08Python發(fā)布 Web應(yīng)用的常見方法及詳細(xì)步驟
本文詳細(xì)介紹了Python發(fā)布Web應(yīng)用的常見方法,包括本地開發(fā)、Nginx+Gunicorn部署、Heroku一鍵部署、Docker容器化部署和Serverless部署,并提供了每種方法的詳細(xì)步驟和優(yōu)缺點(diǎn)對(duì)比,需要的朋友可以參考下2025-03-03運(yùn)動(dòng)檢測ViBe算法python實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了運(yùn)動(dòng)檢測ViBe算法python實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01