파이썬은 문자열을 다룰 때 일반적인 산술 연산 외에도 다양한 특수 연산자를 제공합니다. 이러한 연산자들을 잘 활용하면 문자열 연결, 반복, 추출, 검색, 포맷팅 등을 간결하고 효율적으로 처리할 수 있습니다.
아래 설명에서는 변수 a에는 'Hello', 변수 b에는 'Python'이 저장되어 있다고 가정합니다.
문자열 특수 연산자 목록
| 번호 | 연산자 및 설명 | 예제 |
|---|---|---|
| 1 | + 연결(Concatenation) — 연산자 양쪽의 문자열 값을 하나로 이어 붙입니다. | a + b → HelloPython |
| 2 | * 반복(Repetition) — 같은 문자열을 여러 번 반복하여 새로운 문자열을 만듭니다. | a * 2 → HelloHello |
| 3 | [] 인덱싱(Slice) — 지정한 인덱스 위치의 단일 문자를 반환합니다. | a[1] → e |
| 4 | [ : ] 슬라이싱(Range Slice) — 지정한 범위에 해당하는 문자들을 반환합니다. | a[1:4] → ell |
| 5 | in 멤버십(Membership) — 해당 문자가 문자열 안에 존재하면 참(True)을 반환합니다. | 'H' in a → True |
| 6 | not in 멤버십(Membership) — 해당 문자가 문자열 안에 존재하지 않으면 참(True)을 반환합니다. | 'M' not in a → True |
| 7 | r / R 원시 문자열(Raw String) — 이스케이프 문자의 실제 의미를 무시하고 그대로 출력합니다. 원시 문자열 문법은 일반 문자열과 동일하며, 따옴표 앞에 문자 r(소문자 또는 대문자)를 붙이는 점만 다릅니다. 반드시 첫 번째 따옴표 바로 앞에 위치해야 합니다. | print(r'\n') → \n 그대로 출력print(R'\n') → \n 그대로 출력 |
| 8 | % 포맷팅(Format) — 문자열 서식 지정(String Formatting)을 수행합니다. | 다음 섹션에서 자세히 설명합니다. |
활용 예제 코드
a = 'Hello'
b = 'Python'
print(a + b) # HelloPython
print(a * 2) # HelloHello
print(a[1]) # e
print(a[1:4]) # ell
print('H' in a) # True
print('M' not in a) # True
print(r'\n') # \n (줄바꿈 아님)참고 사항
r/R 연산자는 정규표현식이나 윈도우 파일 경로처럼 백슬래시(\)가 자주 등장하는 문자열을 다룰 때 특히 유용합니다. 예를 들어 r'C:\Users\name'처럼 작성하면 이스케이프 처리 없이 경로를 그대로 표현할 수 있습니다.
% 연산자는 전통적인 문자열 포맷팅 방식으로, 최신 파이썬에서는 format() 메서드나 f-string(f'{a}')이 더 널리 사용되지만, 레거시 코드에서는 여전히 자주 볼 수 있으므로 알아두는 것이 좋습니다.