2011-01-25 32 views

Trả lời

281
with open(fname) as f: 
    next(f) 
    for line in f: 
     #do something 
+34

nếu bạn cần các tiêu đề sau, thay vì 'tiếp theo (f)' sử dụng 'f.readline()' và lưu nó như là một biến – damned

+21

Hoặc sử dụng 'header_line = tiếp theo (f)'. – Samuel

60
f = open(fname,'r') 
lines = f.readlines()[1:] 
f.close() 
+1

số lượng dòng này sẽ bỏ qua –

+0

Điều này sẽ bỏ qua 1 dòng. '['a', 'b', 'c'] [1:]' => '['b', 'c']' –

+1

điều này phải là câu trả lời đúng –

8
f = open(fname).readlines() 
firstLine = f.pop(0) #removes the first line 
for line in f: 
    ... 
1

Nếu cắt có thể làm việc trên lặp ...

from itertools import islice 
with open(fname) as f: 
    for line in islice(f, 1, None): 
     pass 
+0

Đây là một cách thực sự tốt đẹp và thiên về giải quyết vấn đề và có thể được mở rộng đến một số dòng tiêu đề tùy ý – Dai

18

Nếu bạn muốn dòng đầu tiên và sau đó bạn muốn thực hiện một số hoạt động trên tập tin mã này sẽ hữu ích.

with open(filename , 'r') as f: 
    first_line = f.readline() 
    for line in f: 
      # Perform some operations 
2
with open('old.csv', 'r') as f, open('new.csv', 'w') as ff: 
    first_line = f.readline() 
    for line in f: 
     line = line.translate({ord(i):None for i in 'abcd'}) 
     ff.write(line) 
    ff.seek(0) 
    ff.write(first_line) 
Các vấn đề liên quan