使用python脚本将fasta文件转换为制表符分隔文件

时间:2016-10-01 11:52:19

标签: python parsing

我正在学习如何在python中编写脚本。我一直在做以下练习。我必须按以下格式转换fasta文件:

>header 1 
AATCTGTGTGATAT 
ATATA  
AT
>header 2  
AATCCTCT

进入这个:

>header 1  AATCTGTGTGATATATATAAT
>header 2  AATCCTCT 

我在摆脱空白区域时遇到一些困难(使用line.strip()?)任何帮助都会非常感激...

1 个答案:

答案 0 :(得分:1)

这会根据>字符创建一个新字符串,并将字符串组合到下一个>。然后它会附加到运行列表中。

# open file and iterate through the lines, composing each single line as we go
out_lines = []
temp_line = ''
with open('path/to/file','r') as fp:
     for line in fp:
         if line.startswith('>'):
             out_lines.append(temp_line)
             temp_line = line.strip() + '\t'
         else:
             temp_line += line.strip()

with open('path/to/new_file', 'w') as fp_out:
    fp_out.write('\n'.join(out_lines))