1
我需要最琐碎的解决方案转换fasta.txt包含多个核苷酸序列等解析FASTA序列到词典
>seq1
TAGATTCTGAGTTATCTCTTGCATTAGCAGGTCATCCTGGTCAAACCGCTACTGTTCCGG
CTTTCTGATAATTGATAGCATACGCTGCGAACCCACGGAAGGGGGTCGAGGACAGTGGTG
>seq2
TCCCTCTAGAGGCTCTTTACCGTGATGCTACATCTTACAGGTATTTCTGAGGCTCTTTCA
AACAGGTGCGCGTGAACAACAACCCACGGCAAACGAGTACAGTGTGTACGCCTGAGAGTA
>seq3
GGTTCCGCTCTAAGCCTCTAACTCCCGCACAGGGAAGAGATGTCGATTAACTTGCGCCCA
TAGAGCTCTGCGCGTGCGTCGAAGGCTCTTTTCGCGATATCTGTGTGGTCTCACTTTGGT
到词典(名称,值)对象,其中名称将是>头和值将被分配到相应的序列。
下面你可以找到我的失败尝试通过2所列出做
f = open('input2.txt', 'r')
list={}
names=[]
seq=[]
for line in f:
if line.startswith('>'):
names.append(line[1:-1])
elif line.startswith('A') or line.startswith('C') or line.startswith('G') or line.startswith('T'):
seq.append(line)
list = dict(zip(names, seq))
,如果你给我提供的如何解决的解决方案,我会感谢(不包含长序列> 1线工作)它和例子如何通过单独的功能来做到这一点。
感谢您的帮助,
格列布
的建议非常感谢。你也可以向我提供使用defaultdict和列表实例的示例(将名称和序列保存在除字典之外的单独列表中)。 最好的, Gleb – user3470313