首页 > 解决方案 > 如何将字符串列表写入文本(FASTA)文件?

问题描述

我目前正在编写一个程序,该程序接收许多不同的氨基酸序列(字符串),用酶切割它们,然后返回生成的肽(许多较小的字符串)。

我已经编写了程序并且它可以工作,尽管我无法将输出写入文本文件。

例如,输入将类似于:

'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

和输出将是这样的:

肽1

'ABCDE'

肽2

'FGHIJKLMNOP'

肽 3

'QRSTUVWXYZ'

我如何将其写入文本(fasta)文件,因为转换为字符串只是将它们全部捆绑在一起,而不是将它们与肽编号和新行上的序列分开?

string_peptides = str(all_peptides)                       
peptide_file = open(r'Cleaved Peptides.fasta', 'w+')
peptide_file.write(string_peptides)
peptide_file.close()

标签: pythonbioinformaticsfasta

解决方案


您可以先将名称加入序列,然后输出由换行符加入的内容:

all_peptides = ['ABCDE','FGHIJKLMNOP','QRSTUVWXYZ']
peptide_file = open(r'Cleaved Peptides.fasta', 'w+')
out = '\n'.join(['>Peptide' + str(i+1) + "\n" + j for i,j in enumerate(all_peptides)])
peptide_file.write(out)
peptide_file.close()

推荐阅读