컴퓨터 공부/🐍 Python

[PYTHON] TYPEERROR: ‘UNICODE’ OBJECT DOES NOT SUPPORT ITEM ASSIGNMENT

letzgorats 2023. 11. 14. 05:43

파이썬에서는 String과 List는 몇 가지 상황에서 비슷하게 작동할 수 있다. 예를 들어, 각 요소를 반복하는 것과 같은 경우이다.

 

for i in string_s:
    # 무언가를 수행

for i in list_l:
    # 무언가를 수행



그러나, 요소를 수정하려고 할 때, 중요한 차이점이 나타난다. 리스트와 달리 파이썬의 문자열은 "변경할 수 없다". (immutable.)

문자열에서 문자를 아래와 같이 변경하려고 하면,

string_s[i] = 'X'
TypeError: ‘unicode’ object does not support item assignment"라는 오류가 발생한다.

문자열을 수정하려면 먼저 리스트로 변환한 후 변경하고 다시 문자열로 결합해야 한다.

list_s = list(string_s)
list_s[i] = 'X'
new_string_s = "".join(list_s)

※ python 문자열은 바이트 문자열이거나 유니코드 문자열일 수 있다.

 

반응형