我正在阅读30行的csv文件,但只在shell中打印29

时间:2013-12-05 23:00:54

标签: python csv

我有一个csv文件即时读取并返回一列数据。有30行数据,当我打印数据时,我只得到29。

def readMonth(fileName):
infile = open(fileName,"rb")
reader = csv.reader(infile)

month = []
for i in range(0,29):
    data = next(reader)
    month.append(int(float(data[25])))
infile.close()

return month

当我打印时,我应该有30行而不是29。为了打印所有30行,我需要更改什么?

2 个答案:

答案 0 :(得分:7)

for i in range(0,29):

从0开始到28结束。您的意思是range(30)吗?虽然我不确定你为什么不只是循环reader

答案 1 :(得分:0)

也许这就是你要找的东西?

#!/usr/local/cpython-3.3/bin/python

import csv

def readMonth(fileName):
    infile = open(fileName,"r")
    reader = csv.reader(infile)

    month = []
    for row in reader:
        month.append(int(row[0]))
    infile.close()

    return month

month = readMonth('foo.csv')

print(month)