我完全是Python(和编程)的新手,所以我坚持使用一些csv读数。
我在行中有一个csv文件,我有相同顺序的测量数据(在第一个条目的行中是例如1-4的id)。我想从行到行获取数据,我找到了reader.next()函数,但它对我来说有点奇怪。
for line in reader:
print reader.next()
我只从第2行和第4行获得数据。
['2', '112', '14.3654', '90.4555', '105.45']
['4', '114', '180.2115', '90.4555', '105.45']
另一个问题是如何在线上单独输入? (例如:从行ID 2第三个条目 14.3654 )
感谢任何帮助。
答案 0 :(得分:8)
您无需致电reader.next()
,只需执行此操作:
for line in reader:
print line
这将遍历CSV文件中的每一行并将其打印为列表:
将读者的可迭代对象的下一行作为列表返回,根据当前方言进行解析。
您正在做的是文件中的每一行,打印下一行。第一次循环(你的for
循环看第1行),它将打印第二行,内部你在CSV文件中的位置将是第2行。转到下一次迭代循环会将CSV文件中的位置增加到第3行。因此打印reader.next()
会打印第4行。
要在每一行上获得单独的条目,您可以使用下标表示法访问它,就像它是一个列表一样:
for line in reader:
print line[0]
有关使用列表的详细介绍,请参阅Dive Into Python's introduction to lists。
答案 1 :(得分:2)
你想要
for line in reader:
print line
然后,对于符合条目的个人条目,您可以:
for entry in line:
print entry