>백엔드 개발 >파이썬 튜토리얼 >Python 문자열에서 특정 문자 발생을 어떻게 바꿀 수 있습니까?

Python 문자열에서 특정 문자 발생을 어떻게 바꿀 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-25 20:39:13348검색

How Can I Replace Specific Occurrences of a Character in a Python String?

문자열에서 특정 문자 인스턴스 바꾸기

Python에서 문자열은 변경할 수 없습니다. 즉, 개별 문자를 직접 수정할 수 없습니다. 따라서 주어진 Python 코드:

for i in range(0,len(line)):
     if (line[i]==";" and i in rightindexarray):
         line[i]=":"

는 문자열의 문자에 할당을 시도하므로 TypeError와 함께 실패합니다.

replace() 사용

문자의 특정 인스턴스를 바꾸려면 Python의 내장 교체() 메서드를 사용해야 합니다. 이 메서드는 교체할 문자와 교체 문자라는 두 가지 인수를 사용합니다. 그러나 replacement()는 인덱스 인수를 사용하지 않으므로 문자의 특정 인스턴스를 대상으로 지정하는 데 사용할 수 없습니다.

해결 방법

바꾸려는 문자의 특정 인스턴스를 알고 있는 경우 , 슬라이싱을 사용하여 문자열의 관련 부분을 분리할 수 있습니다. 분리한 후에는 replacement()를 사용하여 원하는 문자를 수정할 수 있습니다.

예를 들어 여러 개의 세미콜론(";")이 포함된 문자열이 있지만 특정 위치의 세미콜론만 바꾸려고 한다고 가정합니다. 문자열을 여러 세그먼트로 분할하고 교체()를 사용하여 각 세그먼트의 세미콜론을 바꾸면 됩니다.

start_index = 0
end_index = 10

new_line = line[:start_index]
new_line += line[start_index:end_index].replace(";", ":")
new_line += line[end_index:]

print(new_line)

이 접근 방식을 사용하면 전체 문자열을 수정하지 않고도 문자의 특정 인스턴스를 선택적으로 바꿀 수 있습니다.

위 내용은 Python 문자열에서 특정 문자 발생을 어떻게 바꿀 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.