Re: [問題] 如何讀取特定格式檔案

作者: windless99 (  )   2019-05-01 22:50:26
後來就用re解決了
雖然寫出來不是很漂亮,但還是給需要的人參考
import numpy as np
import re
f=open('file')
l1=f.readlines(1) # 先把頭兩行去掉
l2=f.readlines(1)
data=f.readlines()
f.close()
ds= np.zeros([len(data)//3,10])
for i in range(len(data)//3):
row0=data[3*i+0]
row1=data[3*i+1]
row2=data[3*i+2]
d0=re.findall(r"[-+]?\d*\.\d+|\d+",row0)
d0=[float(x) for x in d0]
d1=re.findall(r"[-+]?\d*\.\d+|E\d+",row1)
d1=[float(x) for x in d1]
d2=re.findall(r"[-+]?\d*\.\d+|E\d+",row2)
d2=[float(x) for x in d2]
ds[i,0:3]=d0
ds[i,3:7]=d1
ds[i,7:10]=d2
作者: art1 (人,原來不是人)   2019-05-02 02:46:00
所以原始資料 E 的後方沒有 + 的符號嗎?看你的正規規則沒寫把所有的換行符號用一個空白取代,然後以10為單位去切割不知可不可行

Links booklink

Contact Us: admin [ a t ] ucptt.com