在python中使用split遍历列

2024-05-23 21:07:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在python中使用split来迭代列,但是当尝试访问列时,我得到一个错误,即某个特定的列表索引超出了范围。你知道吗

我的文件是这样的:

chr1    15585711    .   A   T   45.7081 .   AB=0;ABP=0;AC=2;AF=1;AN=2;AO=3;CIGAR=1X;DP=3;DPB=3;DPRA=0;EPP=9.52472;EPPR=0;GTI=0;LEN=1;MEANALT=1;MQM=60;MQMR=0;        NS=1;NUMALT=1;ODDS=8.76405;PAIRED=0;PAIREDR=0;PAO=0;PQA=0;PQR=0;PRO=0;QA=78;QR=0;RO=0;RPP=9.52472;RPPR=0;RUN=1;SAF=0;SAP=9.52472;SAR=3;SRF=0;SRP=0;SRR=0;            TYPE=snp  GT:DP:RO:QR:AO:QA:GL    1/1:3:0:0:3:78:-7.28,-0.90309,0

这是我的密码:

target = open('file', 'r')

for line in target:
    line = line.split('\t')
    print line[1]

当我打印行时,它看起来像一个列表,并且line[0]访问chr1,这是第一列。但当我尝试访问其他列时,我无法访问。你知道吗


Tags: 文件target列表abro错误lineqa
2条回答

源未使用选项卡。只需使用:

line = line.split()

我刚刚用你提供的数据创建了一个文本文件,可以毫无问题地拆分它。我建议使用with open它将在完成后为您关闭文件:

with open('test', 'rb') as target:
    for line in target:
        print line.split()[1]

输出:

15585711

相关问题 更多 >