시퀀스 객체(
list, tuple, 문자열
)에 범위를 지정하여 잘라내는 것
a[start:end:step]
👉 start, end, step 값은 양수, 음수를 가질 수 있다
a = ['a', 'b', 'c', 'd', 'e']
a | b | c | d | e | |
---|---|---|---|---|---|
양수 | 0 | 1 | 2 | 3 | 4 |
음수 | -5 | -4 | -3 | -2 | -1 |
a[ 0 : ] # ['a', 'b', 'c', 'd', 'e']
a[ 1 : ] # ['b', 'c', 'd', 'e']
a[ 2 : ] # ['c', 'd', 'e']
a[ 3 : ] # ['d', 'e']
a[ 4 : ] # ['e']
a[ -1 : ] # ['e']
a[ -2 : ] # ['d', 'e']
a[ -3 : ] # ['c', 'd', 'e']
a[ -4 : ] # ['b', 'c', 'd', 'e']
a[ -5 : ] # ['a', 'b', 'c', 'd', 'e']
a[ : 2 ] # ['a', 'b']
a[ : -1 ] # ['a', 'b', 'c', 'd']
a[ 2 : 4 ] # ['c', 'd']
a[ -4 : -2 ] # ['b', 'c']
a[ -4 : -1 ] # ['b', 'c', 'd']
a[ 3 : 0 : -1] # ['d', 'c', 'b'] 인덱스 1 ~ 3까지의 값을 거꾸로 가져오기
a[::] # ['a', 'b', 'c', 'd', 'e']
a[ : : 2 ] # ['a', 'c', 'e'] 2칸씩 이동하면서 가져온다
a[ -5 : : 3 ] # ['a', 'd'] 3칸씩 이동하면서 가져온다
a[ : : -1 ] # ['e', 'd', 'c', 'b', 'a'] 전체를 거꾸로 가져온다
a[ 3 : : -1 ] # ['d', 'c', 'b', 'a']