Python csv seek()不起作用

时间:2015-06-04 08:41:25

标签: python csv io

您好我正在尝试使用以下代码读取csv文件。我想从提供的csv文件的n行到m行读取。作为一个例子,我想从第10行开始读到100行,然后从第500行开始到第1000行。我使用startend变量来提供这些参数。

它总是从头开始,无论开始和结束变量。我试过尝试解决方案但失败了。任何人都可以帮我解决这个问题。非常感谢! (有一些重复的问题,但似乎没有人给出解决方案)


    import csv
    import os

    with open('file.csv','r') as csvfile:
        start=10
        end=100
        csvfile.seek(start)
        r= csv.reader(csvfile)
        r.next()
        for i in range(start,end):
            try:
                url=r.next()[2]
                print url
            except IndexError,e:
                print str(e),
            except ValueError,b:
                print b
        csvfile.close()

2 个答案:

答案 0 :(得分:0)

使用csv模块。

import csv

n = 3
m = 5

read = 0
with open("so.csv") as csvfile:
    reader = csv.reader(csvfile)
    for record in reader:
        read += 1
        if read >= n and read <= m:
            print(record)

答案 1 :(得分:0)

您可以迭代csv文件行并获得您想要的行:

Intent intent = new Intent();

<强>更新

来自文档:Intent intent = geIntent();