Я пытался обратно комплементировать последовательность ДНК fasta. Вот мой код:
fastafile=open('sequence (3).fasta','r')
entries=[]
reverse=""
sequence=['A','T','G','C','N']
for line in fastafile:
if not line.startswith('>'):
line = line.split()
entries.append(line)
print entries
for index in range(0,len(entries[::-1])):
if index !=sequence:
print "this is not a valid nucleotide"
break
else:
if index=='A':
reverse+='T'
elif index=='T':
reverse+='A'
elif index=='C':
reverse+='G'
elif index=='G':
reverse+ 'C'
elif index=='N':
reverse+='N'
print reverse
И каждый раз, когда я получаю вывод, это недопустимый нуклеотид, даже когда мой вывод записей показывает, что в нем есть элементы в последовательности. Вот пример вывода, когда я печатаю ввод;
[['GCTCCCCTGAGGTTCGGCACCCACACTCCCTTCCCAGGAGCTCGCGATGCAAGAGCCACAGTCAGAGCTC'], ['AATATCGACCCCCCTCTGAGCCAGGAGACATTTTCAGAATTGTGGAACCTGCTTCCTGAAAACAATGTTC'], ['TGTCTTCGGAGCTGTGCCCAGCAGTGGATGAGCTGCTGCTCCCAGAGAGCGTCGTGAACTGGCTAGACGA']
Как я могу обойти эту проблему? Я просто хочу добавить, что я начал серьезно программировать на Python около 2 месяцев назад, поэтому я все еще учусь и совершенствуюсь. Спасибо!