티스토리 뷰
728x90
반응형

문자열 인덱싱의 기본
문자열 인덱싱은 파이썬에서 문자열의 특정 위치에 있는 문자를 접근할 수 있는 방법입니다. 인덱스는 0부터 시작하며, 음수 인덱스를 사용하면 문자열의 끝에서부터 접근할 수 있습니다.
문자열 슬라이싱의 기본값
string[start:end:step]
시작하는 index 번호 : 종료 할 index번호 : 인덱스의 증가 폭
슬라이싱의 기본 형태는 string[start:end:step]입니다. 여기서 start는 시작 인덱스, end는 끝 인덱스, step은 인덱스의 증가폭을 의미합니다. 이 값들은 모두 기본값을 가질 수 있습니다.
- start의 기본값은 None 입니다. 이는 step이 양수일 때 기본적으로 0으로 치환 됩니다. (그럼 step이 음수일 때는??)
- end의 기본값은 문자열의 길이입니다.
- step의 기본값은 1입니다.
유의사항 예시 코드
아래의 코드를 통해 문자열 인덱싱의 기본값과 그 차이를 살펴보겠습니다.
아래의 세개의 코드는 모두 같은 결과가 나올까요??
python
string = "PYTHON"
print(string[-1::-1]) # 1
print(string[::-1]) # 2
print(string[0::-1]) # 3

# 결과
string = "PYTHON"
print(string[-1::-1]) # 1 : NOHTYP
print(string[::-1]) # 2 : NOHTYP
print(string[0::-1]) # 3 : P
- string[-1::-1]:
- start는 -1로 설정되어 마지막 문자를 시작점으로 합니다.
- end는 기본값인 None으로, 문자열의 시작점까지 접근합니다.
- step은 -1로 설정되어 역순으로 문자열을 반환합니다.
- 결과: "NOHTYP" (문자열을 거꾸로 출력)
- string[::-1]:
- start는 기본값인 None으로, 문자열의 마지막 문자에서 시작합니다. (-1로 치환 되었습니다.)
- end는 기본값인 None으로, 문자열의 시작점까지 접근합니다.
- step은 -1로 설정되어 역순으로 문자열을 반환합니다.
- 결과: "NOHTYP" (문자열을 거꾸로 출력)
- string[0::-1]:
- start는 0으로 설정되어 첫 번째 문자에서 시작합니다.
(위의 2번 예제에서 None 은 -1로 치환 되었지만, 0으로 입력하면 index의 첫번째인 P가 반환됩니다.) - end는 기본값인 None으로, 문자열의 시작점까지 접근합니다.
- step은 -1로 설정되어 역순으로 문자열을 반환합니다.
- 결과: "P" (첫 번째 문자만 반환)
- start는 0으로 설정되어 첫 번째 문자에서 시작합니다.
유의할 점
- 인덱스 범위: 인덱스가 문자열의 범위를 벗어나면 IndexError가 발생할 수 있습니다. 특히, 음수 인덱스 사용 시 문자열의 길이를 고려해야 합니다.
- 빈 문자열 처리: 빈 문자열에 대한 슬라이싱을 시도할 경우, 빈 문자열이 반환됩니다. 예를 들어, ""[::-1]은 ""입니다.
- 성능: 큰 문자열에 대해 슬라이싱을 많이 사용하면 성능 저하가 발생할 수 있으므로, 필요한 경우에만 사용해야 합니다.
결론
문자열 인덱싱과 슬라이싱의 기본값을 이해하는 것은 파이썬 프로그래밍에서 매우 중요합니다. 다양한 인덱스 조합을 통해 문자열을 유연하게 조작할 수 있습니다. 위의 예시를 통해 기본값이 다르게 설정될 때 결과가 어떻게 달라지는지 확인해 보시기 바랍니다.
728x90
반응형
'Python' 카테고리의 다른 글
| 📝 Python 주요 내장 객체별 메서드 Cheat Sheet (1) | 2025.03.20 |
|---|---|
| [python] 문자열의 불변성(immutable): (TypeError: 'str' object does not support item assignment) (3) | 2024.10.03 |
| [Python] Random 모듈에 대한 다양한 활용법 (0) | 2024.08.22 |
| [Python] List Comprehension & Dictionary Comprehension (0) | 2024.08.22 |
| Python 가상화 환경 설정 방법 (Venv) (1) | 2024.08.20 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 오블완
- 퀀트투자
- chat gpt 가격 예상
- chat gpt 4o 예산
- Python
- chat gpt 한국어 가격
- 자동매매로직
- 장고 orm sql문 비교
- 클래스형 뷰
- 로또 1164회 당첨
- Numpy
- 인공지능 로또 예측
- 주식공부
- 골든크로스
- chat gpt 모델별 예산
- 차트분석
- 기술적분석
- 토치비전
- 티스토리챌린지
- 로또 ai
- 1164회 로또
- 자동매매
- 주린이탈출
- 재테크
- 주식투자
- chat gpt api 비용 계산
- chat gpt 모델 별 가격
- 1165회 로또
- chat gpt 모델 api 가격 예측
- 케라스
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함
250x250