본문 바로가기

Python2

파이썬 split() 함수 및 rsplit() 함수 세종 말뭉치를 활용하는 프로그램을 짜고 있는데, 초반에 split() 함수로 스트링을 분리했다가 한참이 지나서야 오류가 있다는 것을 알게 됐다. 일단 세종 말뭉치는 예를 들어 - 집은 창작의 원천이라는 그는 옷 못지않게 공간이 주는 미학을 중요시해 왔다. 집/NNG + 은/JX + 창작/NNG + 의/JKG + 원천/NNG + 이/VCP + 라는/ETM ... 처럼 문장을 형태소 단위로 분석해서 해당 형태소의 품사를 붙여 놓은 텍스트 데이터라고 할 수 있는데, 형태소와 품사를 분리하기 위해서 split()를 썼었다. word = '가을/NNG' morpheme_and_tag = word.split('/') print(morpheme_and_tag) # 실행 결과 ['가을', 'NNG'] 문제는 형태소-태.. 2019. 11. 4.
TypeError: 'type' object does not support item assignment 특정 문자열 "XX + YY + ZZ"를 정규표현식으로 찾을 일이 있었는데, 정규표현식에서 '+'는 그 자체로 기능이 있기 때문에 '+'를 '\+'로 바꿔줘야 했다. 그래서 처음에 생각한 코드: for idx, char in enumerate(string): if char == '+': string[idx] = "\+" 하지만 바로 나타난 것은 TypeError: 'type' object does not support item assignment 이유를 찾아보니 파이썬에서 string 타입은 immutable, 즉 변경 불가능하다는 얘기다. 그러면 새로운 스트링을 생성하는 수 밖에 없다. new_string = "" for char in string: if char == '+': new_string +=.. 2019. 11. 3.