본문 바로가기

프로그래밍 언어/파이썬

Python 문자열(str) 입문: 문자열 선언, 조작, 활용법

Python 문자열(str) 입문: 문자열 선언, 조작, 활용법

Python에서 문자열은 가장 자주 사용되는 데이터 타입 중 하나입니다. 이 글에서는 문자열 선언부터 조작 및 활용법까지 Python의 문자열(str)에 대한 기초와 실전 지식을 배웁니다.

 

 

목차

  1. 문자열 개념 및 기본 선언
  2. 문자열 인덱싱과 슬라이싱
  3. 문자열 조작
  4. 문자열 형식화
  5. 문자열 관련 유용한 메서드
  6. 문자열 활용 예제

 

문자열 개념 및 기본 선언

문자열은 문자들이 연속적으로 나열된 데이터입니다. Python에서는 str 타입으로 관리되며, 작은 따옴표(') 또는 큰 따옴표(")로 선언할 수 있습니다.

예제:


# 문자열 선언
string1 = 'Hello'
string2 = "World"
print(string1 + " " + string2)  # 출력: Hello World

Python에서는 문자열의 길이 제한이 없으며, 유니코드 문자를 지원합니다.

 

 

 

문자열 인덱싱과 슬라이싱

문자열은 배열처럼 각 문자를 인덱스를 통해 접근할 수 있습니다. Python에서는 0부터 시작하는 인덱스를 사용합니다.

  • 인덱싱: 특정 위치의 문자에 접근
  • 슬라이싱: 부분 문자열을 추출

예제:


string = "Python"
print(string[0])  # 출력: P
print(string[-1])  # 출력: n
print(string[1:4])  # 출력: yth

슬라이싱의 기본 형식은 문자열[start:end:step]으로, step을 통해 건너뛸 문자 수를 지정할 수 있습니다.

 

 

 

문자열 조작

Python에서는 문자열을 다양한 방식으로 조작할 수 있습니다. 대표적인 조작 방법은 다음과 같습니다:

  • 문자열 연결 (+): 두 문자열을 이어 붙입니다.
  • 반복 (*): 문자열을 반복합니다.
  • 길이 확인 (len()): 문자열의 길이를 반환합니다.

예제:


string1 = "Hello"
string2 = "Python"
combined = string1 + " " + string2
print(combined)  # 출력: Hello Python

repeated = string1 * 3
print(repeated)  # 출력: HelloHelloHello

length = len(string2)
print(length)  # 출력: 6

 

 

 

문자열 형식화

문자열 형식화는 출력 결과를 읽기 쉽게 만드는 데 유용합니다. Python에서는 세 가지 주요 방식으로 문자열을 형식화할 수 있습니다:

형식화 방법 예제
Old-style (% 사용) '%s는 %d살입니다.' % ('Alice', 25)
str.format() 메서드 '{}는 {}살입니다.'.format('Alice', 25)
f-string (Python 3.6+) f'{name}는 {age}살입니다.'

f-string은 가독성과 성능이 좋아 최신 Python 코드에서 권장됩니다.

 

 

 

 

문자열 관련 유용한 메서드

Python 문자열은 다양한 내장 메서드를 제공합니다. 자주 사용하는 메서드는 다음과 같습니다:

  • upper(): 문자열을 대문자로 변환
  • lower(): 문자열을 소문자로 변환
  • strip(): 문자열 양쪽의 공백 제거
  • replace(): 특정 문자열을 다른 문자열로 교체
  • split(): 문자열을 특정 구분자로 분리

예제:


string = " Hello, Python! "
print(string.strip())  # 출력: Hello, Python!
print(string.upper())  # 출력:  HELLO, PYTHON!
print(string.replace("Python", "World"))  # 출력:  Hello, World!

 

 

 

문자열 활용 예제

다음은 문자열을 활용한 간단한 프로그램 예제입니다:


# 사용자 이름과 나이를 입력받아 출력하는 프로그램
name = input("이름을 입력하세요: ")
age = input("나이를 입력하세요: ")

print(f"{name}님의 나이는 {age}살입니다.")

위 코드는 사용자 입력을 받아 포맷팅된 문자열로 출력합니다. 이런 방식은 간단한 텍스트 기반 애플리케이션에서 유용합니다.

 

 

 

결론

Python의 문자열은 다양한 기능과 유연성을 제공합니다. 이 글에서는 문자열의 기본 선언, 조작 방법, 형식화 및 유용한 메서드를 다루었습니다. 문자열 관련 기능을 마스터하면 Python으로 보다 효율적이고 깔끔한 코드를 작성할 수 있습니다.