如何提取fasta文件的部分信息

该博客介绍使用Python将文件整理成三列,第一列为蛋白ID,第二列为整行内容,第三列为gene ID,列间用制表符分割。通过打开文件、遍历内容,根据行开头和列数进行处理,将结果写入新文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需要将下面的文件整理成三列
在这里插入图片描述
即整理成三列,第一列为蛋白ID,第二列为整个一行,第三列是gene ID,中间用制表符分割
在这里插入图片描述
#打开文件
f1 = open(‘X101SC19051138-Z01-bos_taurus-Customer.fasta’,‘r’)
f2 = open(‘pname.list’,‘w’)
#遍历
for i in f1:
#判断开头是否以>
if i.startswith(’>’):
#是,去掉换行符
i=i.strip("\n")
#按照空格将其分割成两列,存入数组n
n = i.split(’ ‘,1)
#按照空格分割,存入数组m
m = i.split(’ ‘)
#取数组n的第一列从第二个元素开始存入pro_id
pro_id = n[0][1:]
#判断m数据的列数是否有4列
if len(m) >= 4:
#如果有则取第四列元素为gene
gene = m[3]
#写入文件
f2.write(pro_id+’\t’+n[1]+’\t’+gene+’\n’)
else:
#否则将gene的这一列用-代替
f2.write(pro_id+’\t’+n[1]+’\t’+’-’+’\n’)
f2.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值