【发布时间】:2014-06-09 14:59:09
【问题描述】:
我似乎收到了一个奇怪的列表索引超出范围错误:
Traceback (most recent call last):
File "./test.py", line 7, in <module>
print column[2]
IndexError: list index out of range
对于这行简单的代码,
DIR = 'path/to/test.vcf'
for line in open(DIR):
column = line.split()
print column[2]
列输出的位置:
['chr1', '19964150', '.', 'AAAAGAAAAAGAAAAAGAA', '.', '0', '.','END=19964169;MOTIF=AAAAAG;REF=3.16667;RL=19;RPA=.;RU=AAAAGA;VT=STR', 'GT:ALLREADS:AML:DP:GB:PL:Q:STITCH', '0/0:0|6:1/1:6:0/0:0:1:1']
列[0] 输出:
chr1
但是任何其他整数索引都会给我一个错误 如果列是具有 10[9 by list logic] 拆分字符串的列表,为什么我会收到此错误?
【问题讨论】:
-
“如果列是包含 10 个拆分字符串的列表,为什么我会收到此错误?” - 你不会,所以这个假设不成立!您的文件中有空行吗?
-
讨厌把它告诉你,但
column并不总是十个字段。询问您的数据。 -
我使用 .split 删除空格,并创建一个仅包含我需要的信息的列表,但如果它不断向我抛出索引超出范围错误,我将无法访问它