打印CSV文件的前两行的标准输出
问题描述:
我想打印(标准输出)csv文件的前两行:打印CSV文件的前两行的标准输出
#!/usr/bin/env python
import csv
afile = open('<directory>/*.csv', 'r+')
csvReader1 = csv.reader(afile)
for row in csvReader1:
print row[0]
print row[1]
然而,使用此代码打印我的输出第一两列。
有什么建议吗?
答
你想打印一排,但你的代码询问既然你要打印的全行打印每一行
的第一和第二部件 - 你可以简单地打印出来,此外,只读前两个
#!/usr/bin/env python
import csv
afile = open('<directory>/*.csv', 'r+')
csvReader1 = csv.reader(afile)
for i in range(2):
print csvReader1.next()
答
一般情况下,你可以限制与itertools.islice
功能迭代器:
import itertools
for row in itertools.islice(csvReader1, 2):
print row
或者通过创造性地运用zip()
:
好编辑,但不是向前兼容 - '的.next()''是下一个.__ __()'关于Python 3 – agf
+1的循环结构,这使得打印第一'ñ '文件的行 – heltonbiker
@Ofir:谢谢!这似乎打印标题信息后面的前两行。我希望打印标题行,然后打印它下面的下一行。 – Czed