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