csv 列表索引超出范围,即使它不是

0yycz8jy  于 2023-03-27  发布在  其他
关注(0)|答案(1)|浏览(129)

我有一个代码,我写了为了处理数据从一些实验.数据通常存储在.csv文件,有几列和许多行.在某些时候,我需要看看某一个列和处理值只在这一列.为了做到这一点,我引用它row[N],其中N是我需要处理的列的编号。我已经成功地处理了12个文件中的11个,然后在最后一个文件上得到了错误:

Traceback (most recent call last):
  File "C:\Users\User\PycharmProjects\pythonProject\main.py", line 63, in <module>
    brdn_voltage('volt_12.csv')
  File "C:\Users\User\PycharmProjects\pythonProject\main.py", line 18, in brdn_voltage
    a = row[3] #row[N], 
        ~~~^^^
IndexError: list index out of range

我不明白的事情是,为什么一切都很好的前11个文件,然后突然-那.例如,这是一个片段的前一个文件:volt_11.csv正如您所看到的,有4列,所以通过使用row[3],我应该能够访问最后一列,现在,这是所讨论的文件的一个片段:volt_12.csv在我看来完全一样。但是,正如已经说过的,在这个文件中使用row[3]会产生错误。此外,如果我使用row[2]row[1]等,它会导致同样的错误。老实说,我不明白为什么。为了清楚起见:代码对于所有文件都是相同的。

hi3rlvi2

hi3rlvi21#

谢谢大家!Carcigenicate是对的,文件末尾确实有一个空行。我想知道它是怎么到那里的...使用if len(row) > 0:解决了这个问题。

相关问题