这应该是一个简单的,但我有一点脑屁。 CSV维护四个纬度和经度对的列表。根据代码,如果我打印行[0]它只打印纬度,如果我打印行[1]它打印经度。如何格式化代码以打印特定的纬度/经度对?说.. CSV中的第二个lat / lon对。
import csv
with open('120101.KAP.csv','rb') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
print row[0]
答案 0 :(得分:4)
循环reader
为您提供每一行。如果你想获得第二行,请改用next()
function,忽略一个并获得第二行:
reader = csv.reader(csvfile)
next(reader) # ignore
row = next(reader) # second row
print row # print the second row.
您可以使用itertools.islice()
object为您进行跳过来概括:
from itertools import islice
reader = csv.reader(csvfile)
row = next(islice(reader, rownumber)) # skip to index rownumber, read that
print row
考虑到计数从0开始,所以"第二行"是rownumber = 1
。
或者您可以将所有行读入列表并将其编入索引:
reader = csv.reader(csvfile)
rows = list(reader)
print rows[1] # print the second row
print rows[3] # print the fourth row
如果行数有限,则只执行此操作(将所有内容加载到列表中)。对读取器的迭代只能一次产生一行,并使用文件缓冲区进行有效读取,限制使用的内存量;你可以用这种方式处理巨大的CSV文件。