코돈의 개수를 세는 프로그램을 만들어보세요
염기 서열은 일반적으로 3개씩 묶여서 하나의 의미를 나타냄
코돈 : 염기 3개가 묶여 있는 것
lis = []
dic = {}
lis = input("암기 서열을 입력해주세요 : ")
if len(lis) % 3 == 0:
for i in range(0, len(lis), 3):
if lis[i]+lis[i+1]+lis[i+2] not in dic:
dic[lis[i]+lis[i+1]+lis[i+2]] = 0
dic[lis[i] + lis[i + 1] + lis[i + 2]] += 1
print(dic)
for i in range(0,len(nucleos),3):
#3글자씩 추출
codon = nucleos[i:i+3]
#3글자로 구성되는지 확인
if len(codon) == 3:
#딕셔너리에 키가 없을 경우 추가
if codon not in counter:
counter[codon] = 0
counter[codon] += 1
print(counter)
답지 풀이가 훨씬 깔끔하다는 게 보인다
변수 = 리스트범위
이렇게 리스트 요소를 추출해서 변수에 저장할 수 있는지 몰랐다
알아두면 유용할 거 같다
나의 풀이에선 처음부터 리스트의 길이가 3의 배수가 아니면 딕셔너리 자체에
아무런 값도 넣지 않게 되어있는데 문제의 의도는 그게 아니라
3의 배수가 되지못한 나머지를 잘라내고 몫은 그래도 출력하라는 뜻이다.