[python] 슬라이싱

BackEnd_Ash.log·2020년 2월 16일
0

파이썬

목록 보기
4/34

업데이트 2021.1.4 슬라이싱 거꾸로

하다보니 나도 모르게 익숙하게 사용했던것들만 사용하게 된다.
평소에 슬라이싱을 자주사용하지 않아서 ,
한번 정리를 할려고 한다.

https://dojang.io/mod/page/view.php?id=2208

슬라이싱 이란?

연속적인 객체들에 범위를 지정해 선택해서 객체들을 가져오는 방법

기본 사용법과 형태

num_list[start:end:step]

리스트에서도 인덱싱 기능 사용이 가능하며 , 슬라이싱은 나눈다는 의미를 가진다.
각각 start , end , step 모두 양수와 음수를 가질 수 있습니다.

  1. start : 슬라이싱을 시작할 시작위치입니다.
  2. end : 슬라이싱을 끝낼 위치로 end 는 포함하지 않는다.
  3. step : stride 라고도 하며 몇개씩 끊어서 가져올지를 정한다.(옵션)
s_list = [1, 2, 3, 4, 5]
print(s_list[1:4:1])
# [ 2 , 3 , 4 ]

a = [1,2,3,4,5]
print(a[2:4])
# 결과 값 : [3,4]

특정 시작위치부터 끝까지 가져오기

a[start: ]

num_list = [ 1,2,3,4,5]
print(a[1:])
# [2,3,4,5]

num_list = [1,2,3,4,5]
print(a[-3:])
# [3,4,5]

시작점부터 특정 위치까지 모두 가져오기

a [ : end ]

num_list = [1, 2, 3, 4, 5]
print(num_list[:3])  # [1, 2, 3]
print(num_list[:-1])  # [1, 2, 3, 4]

특정 위치부터 특정 위치까지 모두 가져오기


num_list = [1, 2, 3, 4, 5]
print(num_list[2:4])  # [3,4]
print(num_list[1:3])  # [2,3]

전체를 거꾸로 가져오기

num_list = [1, 2, 3, 4, 5]
# 전체를 거꾸로 가져옵니다.
>>> a[ : : -1 ]
[5, 4, 3, 2, 1]

뒤에서 몇개 가져오기

뒤에있는거 3개를 구하려면

num_list = [1,2,3,4,5]
num_list[-3:]
# [3, 4, 5]

뒤에있는거 8개 가져오기 ,

number_list = [1, 2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 ]
num_list[-8:] # [3 ,4 ,5 ,6 ,7 ,8 , 9 , 10]

step 의 예제

  1. num_list[start:end:step]
  2. step 이 양수일때 : 오른쪽으로 step 만큼 이동하면서 가져옴
  3. step 이 음수일때 : 왼쪽으로 step 만큼 이동하면서 가져옴
print(num_list[::-2])  # [5, 3, 1]
print(num_list[-5::2])  # [1,3,5]
print(num_list[::-1])  # [5, 4, 3, 2, 1]

참고한 자료

https://securityspecialist.tistory.com/60

profile
꾸준함이란 ... ?

0개의 댓글