본문 바로가기
Dev/Python

파이썬 기초: 데이터 처리의 핵심, '문자열(String) 조작법'

by DevGyu0511 2026. 1. 21.
반응형

Python 문자열

개요

프로그래밍에서 가장 많이 다루는 데이터 타입 중 하나가 바로 문자열이다. 사용자로부터 입력받은 텍스트를 가공하거나, 파일 경로를 추출하고, 데이터를 정제하는 모든 과정에서 문자열 조작 능력은 필수적이다. 파이썬은 이를 위해 매우 직관적이고 강력한 메서드들을 제공한다.


1. 문자열 슬라이싱(Slicing)

슬라이싱은 [시작:끝:단계] 형식을 사용하여 문자열의 원하는 부분만 잘라내는 기능이다.

  • 시작: 추출을 시작할 인덱스 (포함)
  • : 추출을 마칠 인덱스 (미포함)
  • 단계: 몇 개씩 건너뛰며 추출할지 결정 (기본값 1)
s = "PythonProgramming"

# 1. 특정 범위 추출: 인덱스 0부터 5까지 (6 전까지)
print(s[0:6])    # 'Python'

# 2. 음수 인덱스 활용: 뒤에서 7번째부터 끝까지 추출
# -1이 가장 마지막 글자(g)를 의미함
print(s[-7:])    # 'Gramming'

# 3. 단계(Step) 활용: 2칸씩 건너뛰며 추출
print(s[0:6:2])  # 'Pto' (P, t, o만 추출)

# 4. 문자열 뒤집기: 단계를 -1로 설정하면 역순 출력
print(s[::-1])   # 'gnimmargorPnohtyP'

2. 필수 문자열 메서드 (Methods)

2.1. 분리(split)와 결합(join)

data = "apple,banana,cherry"
fruits = data.split(",")  # ','를 기준으로 리스트화
result = " & ".join(fruits) # 리스트 요소를 ' & '로 결합

2.2. 공백 제거(strip)와 치환(replace)

text = "  Python is Awesome  "
clean_text = text.strip() # 양쪽 공백 제거
new_text = clean_text.replace("Awesome", "Powerful") # 단어 교체

3. 문자열 포매팅: f-string

f-string은 문자열 안에 변수나 표현식을 직접 삽입하는 가장 효율적인 방법이다. 반복문과 결합하면 대량의 문자열 데이터를 동적으로 생성할 수 있다.

name = "DevGyu"
count = 3

# 반복문과 f-string을 활용한 동적 출력 예제
for i in range(1, count + 1):
    print(f"[{i}회차] {name}님의 포스팅을 로딩 중입니다... (남은 횟수: {count - i})")

# 출력 결과:
# [1회차] DevGyu님의 포스팅을 로딩 중입니다... (남은 횟수: 2)
# [2회차] DevGyu님의 포스팅을 로딩 중입니다... (남은 횟수: 1)
# [3회차] DevGyu님의 포스팅을 로딩 중입니다... (남은 횟수: 0)

4. 문자열 찾기 및 검사

데이터에 특정 패턴이 있는지 검사할 때 사용한다.

msg = "Python is the most popular language."

# 1. in 연산자: 포함 여부만 True/False로 확인
print("popular" in msg)      # True

# 2. find() / index(): 위치(인덱스) 찾기
# find는 없으면 -1 반환, index는 없으면 에러 발생
print(msg.find("popular"))   # 19

# 3. startswith() / endswith(): 시작/끝 단어 확인
file_name = "report_2026.pdf"
print(file_name.startswith("report")) # True
print(file_name.endswith(".pdf"))     # True

5. 결론

데이터 정제의 첫걸음

문자열 조작은 파이썬 프로그래밍의 기초 중의 기초이지만, 실제 데이터 분석이나 웹 개발 환경에서는 가장 빈번하게 마주치는 작업이다. 오늘 다룬 메서드들만 숙달해도 텍스트 데이터를 처리하는 속도가 비약적으로 향상될 것이다.

기초가 탄탄해야 정규표현식 같은 복잡한 도구도 자유자재로 다룰 수 있다.
오늘 익힌 메서드들을 직접 코드로 연습하며 손에 익혀보자.

반응형