파이썬 기본적인 질문입니다..

saelly의 이미지

문제가...
s 변수가 이렇게 문자열을 가지고 있을 때, 다음 텍스트에서 모든 태그를 제외한 정보를 출력하다. 태그란 < > 로 표현된 문자열을 의미한다.
이것입니다...

흑.. 아놔... 열혈강의 파이썬 책은 연습문제 해답도 안주고 문제를 왕창냈네여... 인터넷에서 열혈강의 파이썬 연습문제 검색해도 이 문제의 대한 해답은 없네요.. ㅠㅠ

우선, 저는 이렇게 한번 해보았는데... 별로 좋은 방법이 아니네요
사진으로 올렸습니다.

방법론이 잘 안떠올라 무식한 방법으로 해버려서..
문자를 하나하나씩 읽는데다가 반복문이 중첩되는지라.. 좋지 않은 알고리즘이 되어버렸네여..

파이썬에서 반복문 중첩시키지않고 똑같은 결과가 나올 수 있도록 하는... 깔끔한 방법이 있는지 좀 물어봐 주시면 정말 감사합니다~~!!!

File attachments: 
첨부파일 크기
Image icon 11.png6.72 KB
Image icon 123.png12.99 KB
bluekyu의 이미지

4장 문제들 중에서 힌트로 정규표현식을 사용하는 것이 있던 것으로 기억합니다. 이를 이용했었습니다.

http://blog.bluekyu.me/2009/05/4%EC%9E%A5-%EC%97%B0%EC%8A%B5-%EB%AC%B8%EC%A0%9C-15%EB%B2%88.html

/*** Signature ******************
* blog: http://blog.bluekyu.me/ *
********************************/

익명 사용자의 이미지

그냥 제어문으로만 해결하고 싶다면

def delimite_tag(s):
    res = ''
    tag_open = False
    for ch in s:
        if ch == '<':
            tag_open = True
            continue
        elif ch == '>':
            tag_open = False
            continue
        elif not tag_open:
            res += ch
    return res