파이썬에서 특정 문자로 시작하고 끝나는 문자열에서 하위 문자열의 인덱스를 찾아 인쇄합니다.

법률

좋은 하루 되세요!

다음과 같은 문자열이 있다고 가정 해 보겠습니다.

seq = 'ggtctgaatcgggtcaattggcccgctgagggtcaagtaccgggtgacatttgagcatgagtagatcgaggstggccagtatgcaaacggccgattgacgttaaggctaagcctaaaggtccacaggtcagtccagttagcattcgagtctaacggtatcggatctatttcggaaaaggctcatacgcgatcatgcggtccagagcgtac'

이 문자열에는 atgca로 시작하고 끝나는 특정 시퀀스 (하위 문자열)가 있습니다 .

'atgca......atgca' # there can be any letters in between them

atgca 의 색인을 어떻게 인쇄 할 수 있습니까? 위에서 지정한 부분 문자열의 시작 부분에 나타나는 atgca의 인덱스와 부분 문자열의 끝에 나타나는 atgca의 인덱스를 인쇄하고 싶습니다.

도움을 주시면 감사하겠습니다!

라스푸틴

반복 할 때마다 시작과 끝을 확인하도록 위의 코드를 수정할 수 있습니까? 또한 find가 None을 반환하면 어떤 일이 발생하는지 해결해야하므로 index1이 아닌 index1을 추가했습니다.

start = 0
while start < len(seq):
    index1 = seq.find('atgca', start)
    if index1 == -1 or not index1:   
        break
    start = index1
    index2 = seq.find('atgca',start)
        if not index2:
            break
    print index1, index2
    start = index2 + 1

이제 두 개의 인덱스가 있으므로 원하는 경우 사이에있는 문자열 부분을 인쇄 할 수도 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관