gpt4 book ai didi

python - 将 FASTA 文件中的多个序列添加到 python 列表中

转载 作者:行者123 更新时间:2023-11-28 22:03:16 27 4
gpt4 key购买 nike

我正在尝试用多个序列组织文件。这样做时,我试图将名称添加到列表中,并将序列添加到与名称列表平行的单独列表中。我想出了如何将名称添加到列表中,但我无法弄清楚如何将其后的序列添加到单独的列表中。我尝试将序列行 append 到一个空字符串中,但它将所有序列的所有行 append 到一个字符串中。

所有的名字都以'>'开头

def Name_Organizer(FASTA,output):

import os
import re

in_file=open(FASTA,'r')
dir,file=os.path.split(FASTA)
temp = os.path.join(dir,output)
out_file=open(temp,'w')

data=''
name_list=[]

for line in in_file:

line=line.strip()
for i in line:
if i=='>':
name_list.append(line)
break
else:
line=line.upper()
if all([k==k.upper() for k in line]):
data=data+line

print data

如何将序列作为一组字符串添加到列表中?

输入文件是这样的

enter image description here

最佳答案

如果您正在使用 Python 和 fasta 文件,您可能需要考虑安装 BioPython.它已经包含此解析功能,以及更多内容。

解析一个 fasta 文件就这么简单:

from Bio import SeqIO
for record in SeqIO.parse('filename.fasta', 'fasta'):
print record.id, record.seq

关于python - 将 FASTA 文件中的多个序列添加到 python 列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9557713/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com