我有一個任意行的日志文件。我所需要做的就是從日志文件中提取一行以“ Total”開頭的數(shù)據(jù)。我不希望文件中有其他任何行。我如何為此編寫一個簡單的python程序?這是我的輸入文件的外觀TestName id eno TPS GRE FNPTest 1205 1 0 78.00 0.00 0.02Test 1206 1 0 45.00 0.00 0.02Test 1207 1 0 73400 0.00 0.02Test 1208 1 0 34.00 0.00 0.02Totals 64 0 129.61 145.64 1.12我正在嘗試獲取一個看起來像的輸出文件TestName id TPS GRETotals 64 129.61 145.64好的,所以我只希望輸入文件中的第一,第二,第四和第五列,而不需要其他。我正在嘗試list [index]實現(xiàn)此目的,但出現(xiàn)IndexError:(列表索引超出范圍)。另外2列之間的間距也不相同,所以我不確定如何拆分列并選擇所需的列。有人可以幫我這個忙嗎?下面是我使用的程序newFile = open('sana.log','r')for line in newFile.readlines(): if ('TestName' in line) or ('Totals' in line): data = line.split('\t') print data[0]+data[1]
2 回答

茅侃侃
TA貢獻1842條經(jīng)驗 獲得超22個贊
for line in open('filename.txt', 'r'):
if line.startswith('TestName') or line.startswith('Totals'):
fields = line.rsplit(None, 5)
print '\t'.join(fields[:2] + fields[3:4])
添加回答
舉報
0/150
提交
取消