我想知道我们是否能够通过指定行号来获取csv文件的第n行。
答案 0 :(得分:1)
import csv
from itertools import islice
entries = csv.reader(open('/opt/workspace/jup/juppro/media/docs/phonebook.csv', 'rb'), dialect='excel-tab')
list(islice(entries,6))
print entries.next()
或
import csv
from itertools import islice
entries = csv.reader(open('/opt/workspace/jup/juppro/media/docs/phonebook.csv', 'rb'), dialect='excel-tab')
print list(islice(entries,7))[-1]
另见
Using python, how to read a file starting at the seventh line ?
答案 1 :(得分:0)
import csv
def get_line_from_filename(csv_filename, n):
with open(csv_filename) as f:
for i, line in enumerate(csv.reader(f, delimiter=','), 1):
if i == n:
return line
编辑:
使用linecache module。它是否是CSV文件并不重要。它很可能是新行分开的,所以只需使用linecache模块。
import linecache
linecache.getline(filename, lineno)