[파이썬] 인덱싱(indexing)와 슬라이싱(slicing)

컴공생의 코딩 일기·2021년 7월 22일
1

파이썬

목록 보기
3/17
post-thumbnail

인덱싱(indexing)란?

인덱싱(indexing)이란 무언가를 가리킨다는 뜻으로 연속적인 객체(리스트, 튜플, 문자열)에 부여된 번호를 의미합니다. 쉽게 말해서 원하는 값을 가리킬 때 indexing을 사용합니다.

슬라이싱(slicing)이란?

슬라이싱(slicing)이란 무언가를 잘란 낸다는 뜻으로 연속적인 객체(리스트, 튜플, 문자열)에 부여된 번호를 이용해 연속된 객체에 일부를 추출하는 작업입니다.

인덱싱(indexing) 사용 방법

사용방법 : 객체[index]

인덱싱(indexing) 특징

  1. 앞에서부터 시작하면 인덱스(index)는 0부터 시작한다.
  2. 뒤에서부터 시작하며 인덱스(index)는 -1부터 시작한다.

문자열을 사용해서 indexing 해보자!
예시)

city = 'seoul'
print(city[0]) # 결과 값: s
print(city[1]) # 결과 값: e
print(city[2]) # 결과 값: o
print(city[3]) # 결과 값: u
print(city[4]) # 결과 값: l
print(len(city))  # 결과 값: 5

len() 함수를 이용해서 city 문자열에 길이를 보면 5를 출력되는 걸 알 수 있습니다.
하지만 city 문자열을 인덱싱(indexing)하면 첫 번째 문자열 위치는 0이라는 것 을 볼 수 있습니다.

seoul
01234

그림에서 보면 첫 번째 문자열에 인덱스(index)는 0부터 시작입니다. 즉 city 문자열에 마지막 인덱스는 (len)5 - 1 = 4가 됩니다.

문자열을 마지막에서부터 시작하는 예시)

city = 'seoul'
print(city[-1])  # 결과 값: l
print(city[-2])  # 결과 값: u
print(city[-3])  # 결과 값: o
print(city[-4])  # 결과 값: e
print(city[-5])  # 결과 값: s

city 문자열을 뒤에서부터 인덱싱(indexing)을 사용하고 싶다면 -1부터 시작하면 됩니다. 즉 시작 index는 -1, 마지막 index는 -5가 됩니다.

슬라이싱(slicing) 사용 방법

위에서 언급했듯이 슬라이싱(slicing)은 무엇을 잘라낸다는 뜻으로 연속적인 객체에서 일부를 잘라내 추출하는 방식입니다.

객체 = [start:end:step]

  1. start : 객체에서 가져올 시작 인덱스(index)값입니다. start 인덱스(index)값부터 객체에 일부를 가져옵니다.
  2. end : end는 말 그대로 마지막 객체까지의 값을 가져올 인덱스(index)값입니다. 여기서 주의해야 될 점은 start는 start 인덱스(index) 값부터 시작이지만 end는 end 인덱스(index)값 전까지 객체를 가져옵니다.
  3. step: step은 step 인덱스(index) 만큼 건너뛰어서 객체 값을 가져옵니다. (생략할 경우 인덱스(index) 값은 1이 됩니다.)
슬라이싱(slicing)도 인덱싱(indexing)과 마찬가지로 시작 인덱스(index) 값은 
0부터 시작합니다. 그리고 뒤에서부터 시작하고 싶으면-1부터 시작하면 됩니다.

문자열을 slicing 해보자!
예제 1)

s = 'silcing'

# 객체 = [start:end:] 
print(s[0:3:])  # 0 ~ 2까지 문자열 출력, 출력값: sil

# 객체 = [start::]
print(s[0::])  # 0 ~  s의 마지막 문자열까지 출력, 출력값: silcing

# 객체 = [:end:]
print(s[:4:])  # s 문자열 길이 3까지 출력, 출력값: silc

이상으로 인덱싱(indexing)과 슬라이싱(slicing)에 대해 알아봤습니다!!!

profile
더 좋은 개발자가 되기위한 과정

0개의 댓글