Python の学習を始めたばかりで、この問題に行き詰まっています。DNA 配列があり、その相補配列を返す必要があります。たとえば、 がある場合ATTGCA、 が返されTAACGTます。これは、A、T、T、およびAで置き換えます。これは演習であり、文字列メソッドを使用することは想定されていません。今まで試したことはすべて、答えとして「T」を返します。最初の文字だけを認識して停止するようです。どうすればいいですか?CGGC
私は試した:
>>> def get_complementary_sequence(dna):
for char in dna:
if char == 'A':
return 'T'
elif char == 'T':
return 'A'
elif char == 'C':
return 'G'
elif char == 'G':
return 'C'
>>> get_complementary_sequence('ATTGCA')
'T'
また、試しました:
def get_complementary_sequence(dna):
sequence = ""
for nucleotide in dna:
if nucleotide == 'A':
return sequence + 'T'
elif nucleotide == 'T':
return sequence + 'A'
elif nucleotide == 'C':
return sequence + 'G'
elif nucleotide == 'G':
return sequence + 'C'
return sequence
>>> get_complementary_sequence('ATTGCA')
'T'