728x90
슬라이스 Slices
파이썬의 배열은 [::]을 사용해서 배열을 변형할 수 있음
구조
기본적으로 arr [Start:End:Step]의 구조를 가지고 있음
각 파라이터에 값이 없다면 Start = 맨 처음, End = 끝, Step = 1로 볼 수 있음
예제
arr = list([1,2,3,4,5,6,7,8,9,10])
print(arr[::])
print(arr[2::])
print(arr[:9:])
print(arr[::2])
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[3, 4, 5, 6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 3, 5, 7, 9]
- 여기서 Start는 기존의 배열 index(0부터 시작하는 인덱스)로 쓰고 End는 Index+1로 적어서 사용해야 함
- 2번째 Start가 2이기 때문에 3(인덱스 번호 2)에서부터 시작
- 3번째 End가 9이기 때문에 9에서 끝남(인덱스번호 8)에서 끝남
역순
arr = list([1,2,3,4,5,6,7,8,9,10])
print(arr[::-1])
print(arr[::-2])
print(arr[9:2:-1])
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
[10, 8, 6, 4, 2]
[10, 9, 8, 7, 6, 5, 4]
- 역순의 End는 2인데 4에서 끝난 이유는 2-(-1)로 3번째 인덱스로 인식함(역순이기 때문에)
728x90
'Python > 이론, 기초' 카테고리의 다른 글
[Python] 딕셔너리 정렬하기 (0) | 2023.05.01 |
---|---|
[Python] deque 스택, 큐 라이브러리 사용하기 (0) | 2023.03.31 |
[Python] 파이썬 아스키코드(ASCII) (0) | 2023.03.22 |
[Python] Set 정리 사용법 (0) | 2023.03.10 |
[Python] 파이썬 any(), all() (0) | 2023.03.09 |