我怎样才能在这个csv文件中读取5000到6000行?在这个时刻“读取行中的行:”当然会遍历所有行。
所以我有一句话:
with open('A.csv', 'rt') as f:
reader = csv.reader(f, delimiter=';')
for row in reader:
response = urllib2.urlopen(row[12])
此代码用于打开特定的URL链接。
答案 0 :(得分:5)
由于csv reader
支持迭代,您可以使用itertools.islice
对特定部分进行切片,然后循环遍历它。
from itertools import islice
with open('A.csv', 'rt') as f:
reader = csv.reader(f, delimiter=';')
for row in islice(reader,5000,6000):
response = urllib2.urlopen(row[12])
答案 1 :(得分:1)
您可以在for
循环中使用生成器enumerate
:
with open('A.csv', 'rt') as f:
reader = csv.reader(f, delimiter=';')
for row in (r for i, r in enumerate(reader) if 5000<=i<=6000):
response = urllib2.urlopen(row[12])
由于csv.reader
,enumerate
和生成器表达式本身都是生成器,因此您将一次只处理一个。