프로그램

[파이썬] 문제 : 리스트에서 특정 문자 삭제

오디세이99 2022. 11. 29. 21:47
728x90
반응형

(문제)

파이썬 리스트 특정 문자 "01.", "02." 들 삭제 하고 싶습니다.

list = ['반갑습니다.','01. 안녕하세요', '02. 잘자요','다음에 또 만나요']
이런식으로 문자열로 된 리스트에 01. 02. 숫자들이 끼워져있는 경우가 있는데요.
번호가 10이 넘어갈 때도 있습니다. 그럴 경우 해당  "01.", "02." 들 삭제 하고 싶은데요.
삭제하고 난 결과는 
list = ['반갑습니다.','안녕하세요', '잘자요','다음에 또 만나요']
이렇게 만들고 싶습니다.

 

(방법)

lst = ['반갑습니다.','01. 안녕하세요', '02. 잘자요','다음에 또 만나요']

data = []                                      # 정리된 문장 저장용 리스트
for i in range(len(lst)):                     # 문장수만큼 반복
    ss = lst[i]                                # 하나의 문장
    if '.' in ss:                             # 문장에 '.'이 있는지 확인
        if ss.find('.') != len(ss)-1:         # '.'이 있지만 뒤에서 첫번쩨에 있지 않으면(마지막 종료점이 아니면)
            ss = ss.split('.')[1].strip()      # '.'으로 문장을 분리하고 그 중에서 뒤에 있는 문장사용.strip으로 빈공백 제거
    data.append(ss)                            # 정리된 문장에 추가

print(data)

['반갑습니다.', '안녕하세요', '잘자요', '다음에 또 만나요']

728x90
반응형