파이썬의 slice 클래스는 슬라이싱을 도와주는 클래스입니다.
slice 클래스는 start, step, stop을 변수로 갖습니다.
하나의 인자를 가지는 경우 stop을
두 개의 인자를 가지는 경우 start, stop을
세 개의 인자를 가지는 경우 순서대로 start, stop, step을 순서대로 갖습니다.
s1 = slice(5) # stop만 가짐
s2 = slice(1, 6) # start, stop을 가짐
s3 = slice(1, 10, 2) # start, stop, step을 가짐
슬라이스를 사용하면 슬라이싱이 가능한 객체에서 지정된 범위만큼 슬라이싱을 해줍니다.
sample = "abcdefghijklmnopqrstuvwxyz"
nums_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
nums_tuple = tuple(nums_list)
s1 = slice(5)
s2 = slice(3, 6)
s3 = slice(0, -1, 2)
위와 같은 문자열, 리스트 그리고 튜플 객체가 주어졌을 때, slice를 각각에 적용해보겠습니다.
1. str 객체
print('sample[:5]: ', sample[s1])
print('sample[3:6]: ', sample[s2])
print('sample[0:-1:2]: ', sample[s3])
2. list 객체
print('nums_list[:5]: ', nums_list[s1])
print('nums_list[3:6]: ', nums_list[s2])
print('nums_list[0:-1:2]: ', nums_list[s3])
3. tuple 객체
print('nums_tuple[:5]: ', nums_tuple[s1])
print('nums_tuple[3:6]: ', nums_tuple[s2])
print('nums_tuple[0:-1:2]: ', nums_tuple[s3])
'Python > Syntax' 카테고리의 다른 글
[Numpy] ndarray 합치기 (c_, r_, column_stack) (0) | 2022.07.29 |
---|---|
[Python] random 모듈 (0) | 2022.07.18 |
[Pandas] 행에서 문자열, 값의 검색 (0) | 2022.07.15 |
[Pandas] 데이터 프레임 인덱스 초기화 (0) | 2022.07.15 |
[Pandas] 다른 데이터프레임 속성값을 이용해 값 선택, 데이터프레임 순회 (0) | 2022.07.15 |