일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- pip install
- 변수 활용
- pip --help
- 파이썬
- pip 옵션
- 파이썬 강좌
- 코스모에듀벤처
- pip uninstall
- 파이썬개발
- data type
- Indentation Error
- cosmoeduventure
- 조건부 표현식
- parameter
- 슬라이싱(slicing)
- 자료구조
- 변수
- 입출력 함수
- 자료형
- python -m
- python
- PIP
- 파이썬 프로그래밍
- 인덱싱(indexing)
- 파이썬 문법
- 반복문 사용법
- input 사용법
- 파이썬 기초
- 편집기
- 코스모에듀밴처
- Today
- Total
아이와 함께 배우는 세상 사는 법
[파이썬 강좌] 인덱싱(Indexing)과 슬라이싱(Slicing)의 개념과 사용법 본문
[파이썬 강좌] 인덱싱(Indexing)과 슬라이싱(Slicing)의 개념과 사용법
CosmoEduVenture 2024. 2. 16. 22:28
안녕하세요. 코스모에듀밴쳐(CosmoEduVenture) 파파입니다.
파이썬 프로그래밍 언어 학습에 있어서 인덱싱(indexing)과 슬라이싱(slicing)은 시퀀스(순서를 가진) 자료형의 데이터에 접근하고 조작하는 데 있어서 아주 중요한 역할을 합니다. 즉, 데이터를 효율적으로 조작하고 처리하는 데 있어서 인덱싱과 슬라이싱의 개념을 잘 이해하고 활용하는 것이 중요합니다.
시퀀스 객체(Sequence Object) : 문자열(str), 리스트(list), 튜플(tuple)
인덱싱(Indexing)
시퀀스 자료형 데이터는 나열된 순서에 따라 구분이 가능한 번호를 가지게 되며, 이를 인덱스(index)라고 합니다. 그리고 특정 위치에 있는 값을 선택하는 것을 인덱싱(indexing) 이라고 합니다.
인덱싱 및 슬라이싱은 다음과 같이 대괄호([ ])를 사용합니다.
객체명[index]
텍스트 기반의 프로그래밍 언어에서 인덱스(index)의 시작 값은 항상 '0'으로 시작하며, 파이썬의 경우 음수를 사용하여 역 방향으로 인덱스(index) 값을 부여할 수 있습니다. 역 방향의 경우 시작값은 '-1'입니다.
그리고 문자열의 경우 공백 또한 문자로 문자열에 포함되니 참고하시기 바랍니다.
- 시퀀스 자료형의 인덱싱 예제
# 문자열 자료형 인덱싱 예제
data = "hello world"
print(data[0]) # 문자열 0번 인덱스인 'h'출력
print(data[-1]) # 문자열 마지막 인덱스인 'd'출력
# 선택된 문자을 추출하여 결합
print(data[0]+data[4]+data[-1]) # 결과 : 'hod'
# 데이터의 길이 값을 반환하는 함수 : len()
print(len(data) # data 객체의 문자열 길이 반환 : 11
# 인덱싱 오류 예
print(data[11])
예제의 마지막 출과 같이 data 문자열의 11번째 인덱스(index)로 접근하면 범위를 벗어나 오류가 발생합니다.
data는 공백을 포함해 문자의 갯수가 11개이지만 접근 가능한 인덱스(index) 번호는 0~10까지입니다.
슬라이싱(Slicing)
시퀀스 자료형에서 일정한 규칙을 가지고 특정 범위의 값을 추출하는 것을 슬라이싱(Slicing)이라고 합니다.
예를 들어 "hello world" 문자열에서 "hello"만 잘라내고 싶다면 data[0:5]를 사용하여 문자열 추출할 수 있습니다.
슬라이싱 규칙:
- 객체명[시작 : 끝 : 간격] <= 인덱스는 콜론(:)을 사용하여 구분합니다.
시작 : 슬라이싱 할 문자열의 시작 인덱스
끝 : 슬라이싱 할 문자열의 끝 인덱스로 해당 인덱스를 포함하지 않는다.
즉, (시작 ≦ data ≺ 끝) 관계식과 같다.
간격 : 시작을 기준으로 간격만큼 건너뛰어 슬라이싱 한다.
기본값은 1로 설정되어 있으며, 필요에 따라 설정하여 사용한다.
# 슬라이싱 예제
data = ‘hello world’
print(data[0:7]) # 0번 인덱스에서 6번 인덱스까지의 공백을 포함한 문자를 추출.
print(data[:7]) # 첫번째 자리를 비워두면 처음부터를 의미함.
print(data[6:]) # 두번째 자리를 비워두면 마지막까지를 의미함.
nums = [1,2,3,4,5,6,7,8,9,10]
# 첫번째와 두번째 위치의 인덱스가 없음으로 처음부터 끝까지를 의미.
print(nums[::2]) # 그리고 세번째 위치의 값이 '2'이므로 1을 시작으로 홀수 값을 추출.
#결과 [1,3,5,7,9]
슬라이싱을 할 때 인덱스에 음수를 사용하여 데이터를 거꾸로 추출할 수 있습니다.
위 내용을 활용하여 리스트 nums를 거꾸로 슬라이싱하여 출력해 보시기 바랍니다.
'파이썬(python) > 문법(syntax)' 카테고리의 다른 글
[파이썬 강좌] 6. Python 프로그래밍 기초 : 조건문(Conditional) (0) | 2024.02.20 |
---|---|
[파이썬 강좌] 5. Python 프로그래밍 기초 : 맵핑형 자료형(data type) (0) | 2024.02.19 |
[파이썬 강좌] 4. Python 프로그래밍 기초 : 자료형(data type) (1) | 2024.02.15 |
[파이썬 강좌] 3. Python 프로그래밍 기초 : input() 함수 (0) | 2024.01.30 |
[파이썬 강좌] 2. Python 프로그래밍 기초 : print() 함수 : (2) | 2024.01.29 |