我试图创建一个读取fasta文件"seqs.fa"的python程序,并让程序按名称顺序对序列进行排序.
Fasta文件如下所示:
>seqA - human
GCTGACGTGGTGAAGTCAC
>seqC - gorilla
GATGACAA
GATGAAGTCAG
>seqB - chimp
GATGACATGGTGAAGTAAC
Run Code Online (Sandbox Code Playgroud)
我的程序看起来像这样:
import sys
inFile = open(sys.argv[1], 'r')
a = inFile.readlines()
a.sort()
seq = ''.join(a[0:])
seq = seq.replace('\n', "\n")
print seq
Run Code Online (Sandbox Code Playgroud)
预期结果:
>seqA - human
GCTGACGTGGTGAAGTCAC
>seqB - chimp
GATGACATGGTGAAGTAAC
>seqC - gorilla
GATGACAAGATGAAGTCAG
Run Code Online (Sandbox Code Playgroud)
我的结果:
>seqA - human
>seqB - chimp
>seqC - gorilla
GATGACAA
GATGAAGTCAG
GATGACATGGTGAAGTAAC
GCTGACGTGGTGAAGTCAC
Run Code Online (Sandbox Code Playgroud)
最后四行是大猩猩,黑猩猩和人类序列,大猩猩序列分为前两行.
任何人都可以给我一些关于如何排序或解决问题的方法的提示?
python ×1