5SOO_O 의 개발 공부 일지

[Python] [ROSALIND] Finding a Motif in DNA 본문

자료구조 및 바이오 인포매틱스

[Python] [ROSALIND] Finding a Motif in DNA

5soo_o 2022. 4. 8. 09:30

https://rosalind.info/problems/subs/
https://rosalind.info/problems/subs/

주어진 염기 서열에서, 원하는 염기서열로 구성된 문자열이 있는지 검사하는 문제.

정답 데이터 사이 공백을 주어야 한다

 

 

 

내가 작성한 코드

with open("./rosalind_subs.txt") as file:	# 파일 읽기
    sequence = [i.strip() for i in file.readlines()]	# \n 제거


seq = sequence[0]	# 리스트 첫 번째, 검사할 염기 서열
data = sequence[1]	# 찾을 서열

answer = []			# 정답 담을 빈 리스트

for s in range(len(seq)):	# 검사할 염기 서열 0번째 인덱스부터 검사
    if seq[s:].startswith(data):	# data로 시작한다면
        answer.append(s+1)	# answer 리스트에 담기



answer = map(str, answer)	# 정수형 데이터 문자열로 바꿔주기
result = ' '.join(answer)	# 문자열 담긴 리스트 문자열로 변환. 데이터 사이 공백 추가
print(result)
728x90