-1

我正在针对 csv 文件运行一些函数。我调用特定列并拆分文本:

 with open('lasty.csv','rb') as f:
     reader = csv.reader(f, delimiter=',')
     for column in reader:
          entry = column[7].split(" ")[4]  

第 7 列的示例如下所示:

    ['Withdrawal', 'Debit', '', '', "MITTCHELL'S", 'FISH', 'M', '', '', '', '', 'location', 'location', '', 'location']

我收到以下错误:

    entry = column[7].split(" ")[4]
    IndexError: list index out of range

但是,如果我运行:

  entry = column[7].split(" ")[0]

它可以正常工作,但在 [0] 之后它给了我同样的错误。

提前谢谢你。

编辑:

拆分前的第 7 列如下所示:

    "Withdrawal Debit   MITTCHELL'S FISH M     WINTER PARK  FLUS"

在这种情况下,我希望抓住“MITTCHELL'S”,当列被拆分时,它位于 [4] 或第 5 位。

4

1 回答 1

2

row是您输入 CSV中的单独一行,并且拆分为列。

在这种情况下,您试图拆分一个空字符串:

>>> ''.split(' ')
['']

只需使用entry = row[4]

 for row in reader:
      entry = row[4]  
于 2013-07-15T15:34:26.590 回答