Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 문자열의 처음 두 글자와 마지막 두 글자를 합쳐 새 문자열 만들기

개요

주어진 문자열의 처음 두 문자마지막 두 문자를 연결하여 새로운 문자열을 만들어야 하는 경우가 있습니다. 파이썬에서는 카운터 변수를 정의한 뒤, 인덱싱(indexing)슬라이싱(slicing)을 활용해 원하는 범위의 문자에 손쉽게 접근할 수 있습니다.

아래에서 실제 동작 과정을 예제와 함께 살펴보겠습니다.

예제 코드

my_string = "Hi there how are you"

my_counter = 0

for i in my_string:
    my_counter = my_counter + 1
new_string = my_string[0:2] + my_string[my_counter - 2: my_counter]

print("원본 문자열은 ")
print(my_string)
print("새로운 문자열은 ")
print(new_string)

실행 결과

원본 문자열은
Hi there how are you
새로운 문자열은
Hiou

코드 설명

  • 먼저 문자열을 하나 정의하고, 콘솔에 출력하여 확인합니다.

  • 카운터 변수를 0으로 초기화합니다.

  • for 반복문으로 문자열을 한 글자씩 순회하면서 전체 문자 개수를 셉니다.

  • 인덱싱을 사용해 처음 두 문자([0:2])와 마지막 두 문자([카운터-2 : 카운터])에 접근합니다.

  • 두 부분을 연결한 결과를 새로운 변수에 저장한 뒤, 콘솔에 출력합니다.

더 간결한 방법: 음수 인덱싱 활용

사실 파이썬에서는 문자 개수를 직접 세지 않아도 됩니다. 음수 인덱싱(negative indexing)을 사용하면 위 코드를 훨씬 짧고 가독성 좋게 작성할 수 있습니다.

my_string = "Hi there how are you"
new_string = my_string[:2] + my_string[-2:]
print(new_string)  # Hiou

[-2:]는 문자열의 뒤에서 두 번째 문자부터 끝까지를 의미하므로, 별도의 카운터 없이 마지막 두 문자를 바로 추출할 수 있습니다. 실무에서는 이 방식이 더 파이써닉(Pythonic)하다고 평가받습니다.

마무리

이처럼 파이썬의 슬라이싱 기능을 활용하면 문자열의 특정 위치에 있는 문자들을 자유롭게 조합할 수 있습니다. 반복문으로 길이를 세는 방식은 학습 목적으로 유용하지만, 실제 프로젝트에서는 음수 인덱싱을 사용하는 것이 코드를 더 깔끔하고 효율적으로 만들어 줍니다.