我想要計算txt文件中每行的錯誤發生次數。只讀一次而不刪除它Python使用.readline()
foo.txt
文件:
1 1 1 1 1 NA # so, Missings: 1
1 1 1 NA 1 1 # so, Missings: 1
1 1 NA 1 1 NA # so, Missings: 2
但是我也想以獲得用於第一行元素的量(假設這是相等的所有行)。
miss = []
with open("foo.txt") as f:
for line in f:
miss.append(line.count("NA"))
>>> miss
[1, 1, 2] # correct
問題是當我試圖確定元素的數量。我用下面的代碼做了這個:
miss = []
with open("foo.txt") as f:
first_line = f.readline()
elements = first_line.count(" ") # given that values are separated by space
for line in f:
miss.append(line.count("NA"))
>>> (elements + 1)
6 # True, this is correct
>>> miss
[1,2] # misses the first item due to readline() removing lines.`
我怎樣才能讀取第一行而不刪除它的進一步操作?
不成熟的優化是萬惡之源。只需計算循環內_each_行的長度:'for line in f:... elements = len(line.split())'。 – georg