저는 파이썬 초보자이며 파이썬 2.7을 사용하고 있습니다.위치를 사용하여 문자열에서 문자를 추출하십시오.
나는 DNA 서열 (문자열 dna
)을 가지고 있으며 DNA 문자열의 위치에 따라 문자를 추출해야합니다. 위치는 sequence
문자열로 정의됩니다. 여기서 점 앞에있는 첫 번째 숫자는 dna
문자열에서 추출 할 첫 번째 문자를 가리키고 두 번째 숫자는 마지막 문자를 나타냅니다.
저는 이것을 파이썬 프로그램을 가능한 단순하게 유지하면서 루프를 사용해야합니다. 코드를 작성하려고 며칠을 보냈는데 제대로 작동하지 못했습니다. 여기까지 내가 한 일은 있지만 작동하지 않습니다. 어떤 도움이 필요합니까?
dna='abcde'
sequence=' 0..2, 4..5, 4..5'
import re
b=re.finditer('([0-9]{1}\.\.([0-9]{1}))', sequence)
for j in b:
print int(j.group(2))
a=re.finditer('(([0-9]{1})\.\.[0-9]{1})', sequence)
for f in a:
print int(f.group(2))
for element in sequence:
print dna[int(f.group(2)):int(j.group(2))]
위에 표시된 입력에 따라 예상 출력이 어떻게 표시되는지 예를 보여주세요. –
@AmitKumarGupta. 예상 출력은 다음과 같아야합니다. ab e e ab는 0..2와 e에서 4..5를 나타냅니다. – Dang
예상되는 출력은 "ab e e ab"여야합니다? 뭐? 거기에 구두점이 누락되었다고 가정합니다. 적절한 문법, 문장 부호 등을 사용하여 시간을내어 가능한 한 쉽고 혼란스럽지 않도록 도와주십시오. –