列表索引超出范围,有谁知道?

时间:2015-06-02 13:55:22

标签: python list indexing range out

我正在使用文件tabel.txt,我遇到了麻烦。我想显示第四列的数据,但我正在

error: list index out of range

任何人都可以帮我解决这个Picture of this tabel.txt

f = open("tabel.txt", 'r') 

for line in f:

a=line.split("\t")    
    print(a[3])    

2 个答案:

答案 0 :(得分:0)

你可以这样做:

f = open("tabel.txt", 'r') 
for line in f:
    a=line.split("\t")  
    if len(a)>3:  
        print(a[3])    
    else:
        print a

通过这种方式,您可以看到此行中的问题。 正如其中一条评论中所述,99%这是最后一行。

答案 1 :(得分:0)

正如已经注意到的那样 - 很可能你在某个时候缺少第四列。如果您不确定数据,那么这里的好习惯是使用try..except

f = open("tabel.txt", 'r') 
i = 0
for line in f:

    a=line.split("\t")   
    try: 
        print(a[3]) 
    except IndexError:
        print("Empty field at line %s" % str(i))    
    i += 1