이번 글에서는 문자열에서 두 문자를 바꾸는 방법에 대해 설명합니다. 문자열에서 두 문자를 바꾸는 방법을 이해하는 데 도움이 되는 다양한 접근 방식이 있습니다.
접근 방식 1: list() 및 Join() 메서드 사용
문자열에서 두 문자를 교환하려면 다음을 사용할 수 있습니다. 목록() 그리고 가입하다() 방법.
예:
C 프로그래밍 포함
# Input string string = 'hello world' # Convert string to list of characters char_list = list(string) # Swap characters at index 2 and index 6 char_list[2], char_list[6] = char_list[6], char_list[2] # Convert list back to string new_string = ''.join(char_list) # Output new string print(new_string)
산출:
hewlo lorld
설명:
위 코드에서는 먼저 입력 문자열을 다음과 같이 정의합니다. '안녕하세요 세상' . 그런 다음 다음을 사용하여 문자열을 문자 목록으로 변환합니다. 목록() 방법. 다음으로 우리는 튜플 압축 풀기 문자를 바꾸려면 인덱스 2 그리고 인덱스 6 목록에 있습니다. 마지막으로 다음을 사용하여 목록을 다시 문자열로 변환합니다. 가입하다() 메서드를 사용하여 새 문자열을 출력합니다.
접근법 2: 슬라이싱 및 연결 사용
문자열에서 두 문자를 교환하려면 다음을 사용할 수 있습니다. 슬라이스 그리고 연쇄 방법.
예:
# Input string string = 'hello world' # Swap characters at index 2 and index 6 new_string = string[:2] + string[6] + string[3:6] + string[2] + string[7:] # Output new string print(new_string)
산출:
hewlo lorld
설명:
이 접근 방식에서 우리는 문자열 슬라이싱 그리고 연쇄 문자를 교환합니다. 문자열을 네 부분으로 나눕니다. 하위 문자열 교환할 첫 번째 문자 앞에 (문자열[:2]) , 첫 번째로 바뀐 문자 (문자열[6]) , 교체된 문자 사이의 하위 문자열 (문자열[3:6]) , 두 번째로 바뀐 문자 (문자열[2]) 및 두 번째로 교체된 문자 뒤의 하위 문자열 (문자열[7:]) . 그런 다음 이러한 하위 문자열을 원하는 순서로 연결하여 새 문자열을 만듭니다.
접근법 3: 목록 이해 사용
문자열에서 두 문자를 교환하려면 다음을 사용할 수 있습니다. 목록 이해 방법.
예:
# Input string string = 'hello world' # Swap characters at index 2 and index 6 char_list = [string[i] if i not in (2, 6) else string[6 if i == 2 else 2] for i in range(len(string))] # Convert list back to string new_string = ''.join(char_list) # Output new string print(new_string)
산출:
hewlo lorld
설명:
이 접근 방식에서는 입력 문자열의 인덱스를 반복하는 목록 이해를 사용하여 문자 목록을 만듭니다. 우리는 목록 이해 내에서 조건식을 사용하여 문자를 바꿉니다. 인덱스 2 그리고 인덱스 6 .
표현식 문자열[6 if i == 2 else 2] 에서 문자를 반환합니다. 인덱스 6 현재 인덱스가 다음과 같은 경우 2 , 그리고 의 문자를 반환합니다. 인덱스 2 현재 인덱스가 다음과 같은 경우 6 . 그렇지 않으면 현재 인덱스의 원래 문자를 반환합니다. 그런 다음 다음을 사용하여 문자 목록을 다시 문자열로 변환합니다. Join() 메서드 그리고 새로운 문자열을 출력합니다.
이 접근 방식은 새로운 문자 목록을 생성하기 때문에 이전 접근 방식보다 효율성이 떨어질 수 있지만 목록 이해가 사용하기에 더 편리하거나 직관적인 상황에서는 유용할 수 있습니다.
접근법 4: 'bytearray' 내장 유형 사용
문자열에서 두 문자를 교환하려면 다음을 사용할 수 있습니다. bytearray 방법.
예:
# Input string string = 'hello world' # Convert string to bytearray byte_array = bytearray(string, 'utf-8') # Swap characters at index 2 and index 6 byte_array[2], byte_array[6] = byte_array[6], byte_array[2] # Convert bytearray back to string new_string = byte_array.decode() # Output new string print(new_string)
산출:
hewlo lorld
설명:
이 접근 방식에서는 먼저 입력 문자열을 bytearray 사용하여 바이티어레이() 내장 기능. 그 후에는 다음을 지정합니다. 'utf-8' 문자열을 바이트로 변환하기 위해 인코딩을 수행한 다음 두 문자를 다음과 같이 바꿉니다. 인덱스 2 그리고 인덱스 6 해당 요소에 직접 액세스하여 bytearray . 마지막으로 우리는 bytearray 다음을 사용하여 문자열로 돌아갑니다. 풀다() 메서드를 사용하여 새 문자열을 출력합니다.
이 접근 방식은 다음을 사용하므로 효율적입니다. 변경 가능한 bytearray 새 문자열이나 목록을 만드는 대신.