为什么使用.reader()跳过第一行而.readlines()不是?

时间:2017-09-22 18:08:55

标签: python csv

我正在尝试读取.csv文件中的所有数据。首先,我尝试使用csv.reader(),但这会跳过我文件的第一行。我能够使用.readlines()来解决这个问题,但我想知道为什么会出现.reader(),并希望让它读取我的第一行。

{{1}}

1 个答案:

答案 0 :(得分:3)

在你的第一个函数中你不需要使用for line in f:这一行是你的第一行,然后读者从第二行开始。

正确的方法应该是:

for name in files:
    with open(name) as f:
        reader = csv.reader(f, delimiter=',', quoting=csv.QUOTE_NONE)
        for row in reader:
            new_cards.append(row)
print(len(new_cards))

你不需要迭代第一行中的每一行,因为你已经使用for row in reader:

进行了这一行