IndexError:使用csv列出索引超出范围

时间:2018-08-12 13:59:03

标签: python csv

我有包含多个列的CSV文件 当我在第一列中运行此代码时,它将运行正常, 但是当我在另一列中运行它时,将显示此错误
IndexError: list index out of range

array_of_ids = []
with open('reactions/by_ids.csv','r',newline='') as f:
  reader = csv.reader(f)

  for row in reader:
    array_of_ids.append(row[2])

因此,row[0]有效,row[2]不起作用!

1 个答案:

答案 0 :(得分:1)

您应该在文件编辑器中查看CSV文件,并确保每行至少包含3个条目。常见问题是CSV文件包含空白链接时,例如最后一行。

您始终可以在添加之前添加if len(row) == 3:,这样可以跳过所有格式不正确的行,例如:

import csv

array_of_ids = []

with open('reactions/by_ids.csv', 'r', newline='') as f:
    reader = csv.reader(f)

    for row in reader:
        if len(row) == 3:
            array_of_ids.append(row[2])