fasta轉成txt
有的時候需要將fasta格式的序列文件轉換成以tab鍵分割的txt文件
寫了一個簡單的命令。用法如下:
fasta2txt -i input.fa -o out.txt
代碼如下
#!/usr/bin/env python
# -*- coding: utf-8 -*-
__author__ = "Sheng-Wei Ma"
import click #需要你的電腦安裝click包
@click.command()
@click.option('-i', type=click.File('rb'), help='fasta file')
@click.option('-o', type=click.File('w'), help='txt file')
def fasta2txt(i, o):
for line in i:
if line.startswith(">"):
lin = line.strip().split()[0][1:]
o.writelines('\n' + lin + '\t')
else:
o.writelines(line.strip())
if __name__=='__main__':
fasta2txt()
別忘了上述代碼保存爲fasta2txt,並修改權限使之可運行,最後可將文件放在系統全局環境變量下。