스트라이드
x = ['빨강','주황','노랑','초록','파랑','자주']
odds = x[::2]
evens = x[1::2]
print(odds) #['빨강','주황','노랑']
print(evens) #['주황','초록','자주']
-1 증가값을 통해서 바이트와 유니코드 문자열을 역으로 뒤집는다.
x = b'mongoose'
y = x[::-1]
print(y)
#b'esoognom'
스트라이드와 슬라이스를 같이 쓰면 안되는 이유
코드의 밀도가 높아져서 읽기가 어렵다.
증가값에 따라서 시작값과 끝값이 어떤 역할을 하는지 불분명하고, 특히 증가값이 음수인 경우 더 심하다.
대책
증가값을 사용하는 경우 양수로 이용하고 시작과 끝 인덱스를 생략하라.
시직이나 끝 인덱스를 증가값과 함께 사용해야한다면, 스트라이딩한 결과를 변수에 대입한 다음 슬라이싱하라.
스트라이딩한 다음 슬라이싱을 하면 한 번 더 얕게 복사가 된다.
y = x[::2]
z = y[1:-1]