したがって、ファイルから読み取った文字列のリストがあります(クエリ)。">" で始まるすべての行を name_list というリストに追加し、それに続くすべてのアルファベット文字 (ただし、次の ">" 行の前) をリストに追加したいと考えています。これは、集合論に関して以前私がしなければならなかった非常によく似た質問ですが、while ループを操作しようとすると、無限のフィードバックループに巻き込まれました...
これは文字列のリストの例です
query = [">mm10_refGene_NM_001011532 range=chr2:86084810-86085854 5'pad=0 3'pad=0 strand=- repeatMasking=none", 'caatgcctttgcctcactgataatttctattagtcttatcttatttcatt', 'ttactttgcagctgttaagacttgatgaaATGGCTGGAAGCAATGCCACT', 'GGTGTGACAGAATTCATTCTCTTGGGGTTTGCAGTCCAGAGAGAGGTAGA',">mm10_refGene_NM_001011534 range=chr2:85352995-85353924 5'pad=0 3'pad=0 strand=- repeatMasking=none", 'ATGGAACAAAGTAATGACACCAAAGTGACTGAATTCATTCTTCTGGGATT', 'TTCCGGACAGCACAAATCTTGGCACATTCTGTTCATAATATTTCTAATGA', 'TCTATGTTGTCACACTCATGGGTAACATTGGAATGATCGTACTCATCAAA']
これは私が取り組んできたコードです:
name_list = []
seq_list = []
for line in query:
while line.startswith(">"):
name=line
temp_seq=[]
for line in query:
if line.isalpha()==True:
temp_seq.append(line)
else:
break
name_list.append(name)
seq_list.append(''.join(temp_seq))
出力データの例:
name_list = [">mm10_refGene_NM_001011532 range=chr2:86084810-86085854 5'pad=0 3'pad=0 strand=- repeatMasking=none",">mm10_refGene_NM_001011534 range=chr2:85352995-85353924 5'pad=0 3'pad=0 strand=- repeatMasking=none"]
seq_list = ['caatgcctttgcctcactgataatttctattagtcttatcttatttcattttactttgcagctgttaagacttgatgaaATGGCTGGAAGCAATGCCACTGGTGTGACAGAATTCATTCTCTTGGGGTTTGCAGTCCAGAGAGAGGTAGA','ATGGAACAAAGTAATGACACCAAAGTGACTGAATTCATTCTTCTGGGATTTTCCGGACAGCACAAATCTTGGCACATTCTGTTCATAATATTTCTAATGATCTATGTTGTCACACTCATGGGTAACATTGGAATGATCGTACTCATCAAA']
申し訳ありませんが、これが ( Search for word (from list of words) in line (from list of lines) and append values to new list. Python ) に似ていて、冗長である場合は申し訳ありませんが、人々を助けるのに良い質問だと思いましたこのタイプのデータを扱う人。