문자열 처리의 핵심 함수 및 메서드 이해
프로그래밍/소프트웨어 개발
웹 개발
대상자
- 초보~중급 Python 개발자: 문자열 조작, 인코딩/디코딩, 텍스트 분할/변환 등의 기초 개념을 학습하는 개발자
- 난이도: 기초~중급 수준 (구체적인 파라미터 사용법, 예제 포함)
핵심 요약
str()
및encode()/decode()
: 문자열 생성, 인코딩/디코딩 방법을 설명splitlines()
: 줄 단위로 분할 시keepends
파라미터와 다양한 줄 바꿈 기호(\n
,\r\n
,\u2028
등)를 처리upper()
,lower()
,title()
등: 문자열 변환 메서드의 기능과 사용 예시
섹션별 세부 요약
1. 문자열 생성 및 변환 메서드
str()
함수: 객체를 문자열로 변환encode(encoding='utf-8')
: 문자열을 바이트 시퀀스로 인코딩 (예:s.encode('utf-8')
)decode(encoding='utf-8')
: 바이트 시퀀스를 문자열로 디코딩 (예:b.decode('utf-8')
)upper()
,lower()
,casefold()
등: 대문자/소문자 변환 (예:'Hello'.lower()
→'hello'
)
2. 문자열 검색 및 치환 메서드
find()
,rfind()
,index()
,rindex()
: 특정 문자/문자열 위치 탐색count(substring)
: 특정 문자열의 발생 횟수 계산replace(old, new)
: 문자열 치환 (예:'abc'.replace('a', 'x')
→'xbc'
)removeprefix(prefix)
,removesuffix(suffix)
: 접두사/접미사 제거 (Python 3.9+)
3. `splitlines()` 메서드의 세부 기능
splitlines(keepends=False)
: 줄 바꿈 기호 제거 (기본값) 또는 포함 (keepends=True
)- 줄 바꿈 기호 예시:
\n
(Line Feed),\r
(Carriage Return),\r\n
(Windows 스타일),\u2028
(Line Separator)- 예제:
```python
v1 = '1 one\n2 two\r3 three'
print(v1.splitlines()) # ['1 one', '2 two', '3 three']
print(v1.splitlines(True)) # ['1 one\n', '2 two\r', '3 three']
```
결론
splitlines()
의keepends
파라미터를 통해 줄 바꿈 기호를 포함/제거할 수 있으며, 다양한 줄 바꿈 기호(\n, \r, \u2028 등)를 지원str()
과encode()/decode()
는 텍스트 처리의 기초이며,replace()
와split()
은 실무에서 텍스트 분석/변환 시 필수적으로 사용됨