fastaファイル「seqs.fa」を読み取り、シーケンスを名前順にソートするプログラムを作成するpythonプログラムを作成しようとしていました。
Fasta ファイルは次のようになります。
>seqA - human
GCTGACGTGGTGAAGTCAC
>seqC - gorilla
GATGACAA
GATGAAGTCAG
>seqB - chimp
GATGACATGGTGAAGTAAC
私のプログラムは次のようになります。
import sys
inFile = open(sys.argv[1], 'r')
a = inFile.readlines()
a.sort()
seq = ''.join(a[0:])
seq = seq.replace('\n', "\n")
print seq
期待される結果:
>seqA - human
GCTGACGTGGTGAAGTCAC
>seqB - chimp
GATGACATGGTGAAGTAAC
>seqC - gorilla
GATGACAAGATGAAGTCAG
私の結果:
>seqA - human
>seqB - chimp
>seqC - gorilla
GATGACAA
GATGAAGTCAG
GATGACATGGTGAAGTAAC
GCTGACGTGGTGAAGTCAC
最後の 4 行はゴリラ、チンパンジー、および人間のシーケンスで、ゴリラのシーケンスは最初の 2 行に分割されています。
誰かがそれを並べ替える方法や問題を解決する方法についてのヒントを教えてもらえますか?