我有一个带有制表符分隔的0-10行的巨大文件。我的问题是,如何忽略缺少空行的整行[4]?我输入文件,如何忽略缺少数据的行
1 GRMZM2G052619_P03 10 56 a b c d e y
2 GRMZM5G888620_P01 23 67 go:89 f g h k l m
3 GRMZM5G886789_P02 45 89 o p r s t w
所以,我最后的输出应该是这样的,
2 GRMZM5G888620_P01 23 67 go:89 f g h k l m
import re
f=open('input.txt','r')
r=open('output.txt','w')
lines=f.readlines()
for line in lines:
new_list=re.split(r'\t+',line)
go_acc=new_list[4]
if go_acc != '':
r.writelines(line)
f.close()
r.close()
我认为某件事情是错误的在这条线,如果go_acc = ''!
你的正则表达式'\ T +'被消耗'\ t \ t'时'线[4]'是空的,所以在那里没有空字符串,而是下一个字段。或者改为使用'\ t'或者按照@falsetru的建议计算字段的数量。 –