2017-01-28 1 views
0

저는 파이썬을 처음 접했고, 나는 문자열이 불변이라는 책을 읽었습니다. 그렇다면 replace() 함수는 어떻게 파이썬에서 작동합니까? 바꾸려는 텍스트를 찾은 부분까지 슬라이스하고 새 문자열로 텍스트를 추가 한 다음 바꿀 텍스트 뒤에있는 나머지 텍스트를 추가합니다.파이썬 3.x에서 대체 함수가 어떻게 작동합니까?

+0

문서화 된 ['str.replace'] (https://docs.python.org/3/library/stdtypes.html#str.replace)는 새 문자열을 반환합니다. 그것은 오래된 것을 돌연변이시키지 않습니다. – jonrsharpe

+0

String 메서드는 새 문자열 객체를 반환하지만 원본을 변경하지 않습니다. – cdarke

답변

1

str.replace에 대한 문서는 말한다 :

반환 새로운 대체 모든 이전 하위 문자열 항목에 대해 문자열의 사본. here 가입일

:

또한 거기에는 가변 문자열 유형 없지만 str.join() 또는 io.StringIO 효율적 여러 조각의 문자열을 구성하는데 사용될 수있다.

그러나 최소한 표준 구현에서는 이 native code에 구현 된 것처럼 보입니다.

관련 문제