我的目标是在纯文本文件中找到具有id的行,然后获取该id后面的令牌的值。在我的文件中有100条与此类似的行:(第5列始终是我搜索的id,第6列是我需要抓取/存储两个字母之间的数字的标记。
例如,如果我正在寻找id Q9C0F0,我想得到/存储值1136(在2个字母-K和N之间)。然后我想使用该数字在输出文件上打印。提前致谢
COAAD ASXL3 Missense_Mutation KFGM-AA-3672 Q9C0F0 K1136N
COAAD ASXL3 Missense_Mutation KFGM-AA-3693 Q9C0F0 A1544E
COAAD ASXL3 Missense_Mutation KFGM-AA-A010 Q9C0F0 F353S
COAAD ASXL3 Missense_Mutation KFGM-AA-A010 Q9C0F0 L157I
COAAD ASXL3 Missense_Mutation KFGM-AG-3890 Q9C0F0 L1324Q
COAAD ASXL3 Missense_Mutation KFGM-AG-A002 Q9C0F0 H552N
COAAD ASXL3 Missense_Mutation KFGM-AG-A002 Q9C0F0 K471N
COAAD ASXL3 Missense_Mutation TKFGM-AG-A002 Q9C0F0 L804M
答案 0 :(得分:0)
这是一个简单的方法,也许它会对你有所帮助,“算法”的核心性取决于输入条件,所以你可能需要改变整数的解析并改变一些条件
with open('file') as f:
for line in f.readlines():
l = line.split()
if l and l[4] == 'Q9C0F0':
print l[5][1:-1] # or parse int in a more inteligent way