파이썬 문자열(String)의 특성과 기본 연산
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
- 초보 Python 개발자
- 문자열 처리 및 연산에 대한 기초 지식이 필요한 사람
- 난이도: 기초 수준 (문자열 생성, 인덱싱, 슬라이싱 등)
핵심 요약
- 문자열은
immutable
로 생성 후 수정 불가능 - 문자열 생성:
''
또는""
또는str()
사용 가능 - 대규모 문자열 생성 시
I/O error
발생 가능성
섹션별 세부 요약
1. 문자열의 정의와 특성
- 문자열은 0개 이상의 문자로 구성된 순서열
immutable
특성으로 인해 인덱싱/슬라이싱은 접근 가능하지만 수정 불가능I'm John.
과 같이 따옴표 내부에서'
는\'
로 이스케이프 처리
2. 문자열 생성 방법
- 공백 문자열:
v = ''
또는v = ""
- 일반 문자열:
v = 'Hello'
또는v = "Hello"
- 이스케이프 시퀀스 사용:
v = 'I\'m John.'
3. 문자열 확장 (`*` 연산자)
v = 'abc' * 3
→abcabcabc
- 대규모 문자열 생성 시
I/O error
발생:
```python
v = 'abc' * 100000000 # OSError: [Errno 29] I/O error
```
4. 인덱싱과 슬라이싱
- 정방향 인덱싱:
v[0]
,v[1]
, ...,v[7]
- 역방향 인덱싱:
v[-8]
,v[-7]
, ...,v[-1]
- 슬라이싱 예시:
```python
v[::2], v[::-2], v[2:], v[-6:]
```
5. 주의사항: 대규모 문자열 처리
*
연산자로 대규모 문자열 생성 시 시스템 자원 과부하 발생 가능- 대체 방안: 반복문이나
join()
메서드 사용 권장
결론
- 대규모 문자열 생성 시
*
연산자 대신join()
또는 반복문 사용 - 문자열은
immutable
특성으로 인해 수정 시 새로운 객체 생성 - 인덱싱/슬라이싱은 접근 가능하지만 직접 수정 불가