我有一個包含多個序列的fasta文件,我想要做的就是在每個序列的末尾添加64個N。如何在python文件末尾添加一堆「N」?
這裏是
>164778
AATCTAGATTTGTGTTGAACAACCCTTGGTACAACAAATACTTGGCACTTTTATAACCCAACTGTATGGTATAATCGACA
TCTGTGTTATGAAAGGAACTTGATTTGTTGTTAACATAAGCAATCACCATGAATACCTGATAATATTTACAAGTATTGGC
ATTACTCGAATAAGATAATTAATGTAATCATGTTAACAATTTATAATCTAATTGAAACCTCCTTTGTGTGTGGTTTCCAA
TTGGGCAATAAGAGTTTATAC
>164779
AAATCACTTTCAGTGGAAAATTATAAAACCTATTAATTTATTGCCGGCCCTCAAATCAACGCAACCCAAAACCTATTAAT
TATAAAACCTATTAATTTATTTTTTCAATCAACTACGACTATTAATTATATTTGATGATAATGAATGAAATGACACCATG
GTTATATAAAAAATATGTCAAAAGCTATTCTTAATAGGGTTT
我想獲得這一點
>chr
AATCTAGATTTGTGTTGAACAACCCTTGGTACAACAAATACTTGGCACTTTTATAACCCAACTGTATGGTATAATCGACA
TCTGTGTTATGAAAGGAACTTGATTTGTTGTTAACATAAGCAATCACCATGAATACCTGATAATATTTACAAGTATTGGC
ATTACTCGAATAAGATAATTAATGTAATCATGTTAACAATTTATAATCTAATTGAAACCTCCTTTGTGTGTGGTTTCCAA
TTGGGCAATAAGAGTTTATACNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNAAATCACTTTCAGTGGAAAATTATAAAACCTATTAATTTATTGCCGGCCCTCAAATCAACGCAACCCAAAACCTATTAATTATAAAACCTATTAATTTATTTTTTCAATCAACTACGACTATTAATTATATTTGATGATAATGAATGAAATGACACCATG
GTTATATAAAAAATATGTCAAAAGCTATTCTTAATAGGGTTT
的代碼,我現在的問題是將N-的在每一行的末尾輸入文件的例子,不在每個序列的末尾。
import textwrap
result = list()
spacer = "N" * 64
with open ("join_fasta_test.fasta", 'r') as fh_in:
for line in fh_in:
line = line.strip()
if not line.startswith(">"):
result.append(line)
result.append(spacer)
print result
result2 = "".join(result)
print result2
result3 = '\n'.join(textwrap.wrap(result2, 80))
print result3
with open("join_fasta_test_out.fasta", 'w') as fh_out:
fh_out.write(">chr")
fh_out.write("\n")
fh_out.write(result3)
什麼方式隔開序列?如何判斷一個序列何時*超過*。 – wwii
您的描述和示例輸出不完全匹配。我希望你的輸出也包含所有的'> {number}'行,然後是僅添加了間隔符的序列。 –