파이썬: 배열 범위를 벗어난 슬라이싱이 왜 가능한가

고병찬·2024년 1월 8일
0

PS

목록 보기
6/20
post-custom-banner

참고 : https://blog.finxter.com/daily-python-puzzle-overshoot-index-slicing/

a = [1,2,3]
print(a[4]) # error
print(a[4:5]) # not error!!!

슬라이싱을 할 때 배열의 최대 인덱스를 넘어서도 에러가 뜨지 않고 빈 배열만 반환하더라.

도대체 왜!!!
헷갈리게!!!

찾아보니 같은 생각을 한 분이 멋지게 정리해주었음
일부분을 가져오자면 파이썬 문서에 아래와 같이 슬라이싱을 정의한다고 한다.

“The slice of s from i to j with step k is defined as the sequence of items with index x = i + nk such that 0 <= n < (j-i)/k. In other words, the indices are i, i+k, i+2k, i+3*k and so on, stopping when j is reached (but never including j). When k is positive, i and j are reduced to len(s) if they are greater“

행복

profile
안녕하세요, 반갑습니다.
post-custom-banner

0개의 댓글