파이썬 염기서열 리스트 요소 변형하기에 대해 질문드립니다.

조회수 363회

DNA 염기서열을 파이썬으로 나타내는 간단한 코드를 짜고있어요.

염기서열을 입력 받으면 리스트에 저장한 다음에 for문과 if문으로 규칙에 따라 리스트 요소를 변형한 뒤에 바뀐 리스트를 출력하는 코드입니다. (규칙: A --> T, T -->A)

그런데 제가 짠 것 처럼 실행하면 for문이 실행되며 a[0]만 바꾸고 a[1], a[2]는 건드리지 않더라구요.

그래서 제가 A T A를 입력해도 a[0]에서만 if문이 적용되어서 ['T', 'T', 'A'] 이렇게 출력되요. (규칙대로 올바르게 출력되면 ['T', 'A', 'T']로 출력되어야 해요) 어떻게 해야 a[1], a[2]에도 if문이 적용되어서 규칙에 따라 올바르게 출력될까요.

DNA_list = list(map( str, input("3염기 서열을 입력하세요.").split())) 
a = DNA_list

for i in a:
  if (i == "A") :
    a[a.index("A")] = "T"

  elif (i == "T") :
    a[a.index("T")] = "A" 

  else :
    a = "염기서열을 잘 못 입력하셨습니다"

print(a)

1 답변

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.