Python의 인덱스에서 문자열의 문자 바꾸기

Vaibhhav Khetarpal 2023년1월30일
  1. 문자열 슬라이싱을 사용하여 Python의 특정 인덱스에서 문자열의 문자 바꾸기
  2. 목록을 사용하여 Python의 특정 인덱스에서 문자열의 문자 바꾸기
  3. 모든 경우에 서로 다른 인덱스에서 둘 이상의 문자를 동일한 문자로 바꾸기
  4. 모든 경우에 서로 다른 인덱스에서 둘 이상의 문자를 서로 다른 문자로 바꾸기
Python의 인덱스에서 문자열의 문자 바꾸기

우리 모두 알고 있듯이 Python의 문자열은 변경할 수 없으므로 파이썬 코드가 실행되는 동안 문자열을 직접 변경할 수 있는 방법은 없습니다. 그러나 경우에 따라 이를 수행할 필요가 있으며 다른 방법으로 간접적으로 수행할 수 있습니다.

이 자습서는 Python의 특정 인덱스에서 문자열의 문자를 바꾸는 방법을 보여줍니다.

문자열 슬라이싱을 사용하여 Python의 특정 인덱스에서 문자열의 문자 바꾸기

목록 슬라이싱은 코딩 과정에서 발생하는 몇 가지 문제를 해결하는 효율적인 방법입니다. 콜론(:) 연산자는 목록 슬라이싱 프로세스에 사용됩니다. start, finishstep과 같은 세부 정보 또는 매개변수는 콜론 연산자를 사용하여 지정할 수 있습니다.

다음 코드는 문자열 슬라이싱을 사용하여 Python의 특정 인덱스에 있는 문자열의 문자를 대체합니다.

stra = "Meatloaf"
posn = 5
nc = "x"

stra = string[:posn] + nc + string[posn + 1 :]
print(stra)

위의 코드는 다음 출력을 제공합니다.

Meatlxaf

설명:

  • 주어진 문자열의 지정된 위치에 있는 단일 문자를 대체하기 위해 주어진 문자열을 분할하여 세 개의 섹션을 만듭니다.
  • 중간 부분은 교체가 필요한 캐릭터만 포함합니다. 첫 번째 섹션과 마지막 섹션에는 각각 선택한 문자 앞과 뒤의 문자가 포함됩니다.
  • 그런 다음 간단한 + 연산자를 사용하여 세 섹션을 모두 결합합니다. 그러나 선택한 문자가 포함된 중간 부분 대신 교체해야 하는 문자가 그 자리에 결합됩니다.

목록을 사용하여 Python의 특정 인덱스에서 문자열의 문자 바꾸기

목록은 Python이 제공하는 4가지 기본 제공 데이터 유형 중 하나이며 단일 변수에 여러 항목을 저장하는 데 사용됩니다. 목록은 순서가 지정되고 변경 가능하며 명확한 개수가 있습니다.

이 방법에서는 주어진 문자열을 먼저 목록으로 변환합니다. 그 후, 이전 문자는 지정된 인덱스의 새 문자로 대체됩니다. 마지막으로 목록 항목은 join() 함수를 사용하여 문자열로 변환됩니다.

다음 코드는 목록을 사용하여 Python의 특정 인덱스에 있는 문자열의 문자를 대체합니다.

stra = "Meatloaf"
posn = 6
nc = "x"
tmp = list(stra)
tmp[posn] = nc
stra = "".join(tmp)
print(stra)

위의 코드는 다음 출력을 제공합니다.

Meatloxf

이 두 가지는 문자열의 단일 문자를 처리하는 데 사용할 수 있는 방법이었습니다. 계속해서 여러 지정된 인덱스에서 문자를 바꾸는 데 중점을 둘 것입니다.

모든 경우에 서로 다른 인덱스에서 둘 이상의 문자를 동일한 문자로 바꾸기

여기서는 목록을 활용하겠습니다. 이 방법은 인덱스가 적고 이러한 여러 인덱스의 모든 문자를 단일 문자로 바꿔야 할 때 사용됩니다.

이것이 작동하려면 주어진 목록의 모든 인덱스를 반복해야 하며 문자 변경이 필요한 발견된 각 인덱스를 대체하기 위해 슬라이싱을 구현할 수 있습니다.

다음 코드는 많은 인덱스의 문자를 단일 문자로 교체해야 할 때 목록 슬라이싱을 사용합니다.

stra = "Meatloaf"
loi = [2, 4, 6]
nc = "x"
res = ""

for i in loi:
    stra = stra[:i] + nc + stra[i + 1 :]

print(stra)

위의 코드는 다음 출력을 제공합니다.

Mextxoxf

모든 경우에 서로 다른 인덱스에서 둘 이상의 문자를 서로 다른 문자로 바꾸기

이 경우 모든 인덱스에서 동일한 문자를 교체할 필요는 없습니다.

이를 위해 목록 대신 사전을 사용합니다. 사전은 hashmap과 매우 유사하며 입력된 데이터를 key:value 쌍의 형태로 저장합니다.

선택한 인덱스에 제공된 모든 문자를 각각의 대체 문자로 교체하기 위해 생성된 사전의 key:value 쌍 전체를 반복합니다.

다음 코드는 여러 인덱스의 문자를 각각의 대체 문자로 바꿉니다.

stra = "Meatloaf"
cr = {1: "x", 3: "c", 5: "w"}

res = ""

for index, replacement in cr.items():
    stra = stra[:index] + cr[index] + stra[index + 1 :]

print(stra)

위의 코드는 다음 출력을 제공합니다.

Mextcowf
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

관련 문장 - Python String