-
리스트(List) > 슬라이싱Language/자료구조 2024. 5. 23. 13:21
리스트 슬라이싱
: [n:m]을 이용하면 리스트에서 원하는 아이템만 뽑아낼 수 있다.
ex) [2:4] → 2 <= n < 4 (2번인덱스 ~ 3번인덱스)
students = ['홍길동', '박찬호', '이용규','강호동', '박승철', '김지은'] print(f'students1 : {students}') print(f'students2 : {students[2:4]}') print(f'students3 : {students[:4]}') print(f'students4 : {students[2:]}') print(f'students5 : {students[2:-2]}') >>> students1 : ['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은'] students2 : ['이용규', '강호동'] students3 : ['홍길동', '박찬호', '이용규', '강호동'] students4 : ['이용규', '강호동', '박승철', '김지은'] students5 : ['이용규', '강호동']
1) 문자열도 슬라이싱 가능
- 리스트를 슬라이싱 -> 결과 : 리스트
- 문자열 슬라이싱 -> 결과 : 문자열
str = 'abcdefghijklmn' print(f'str: {str[1:3]}') >>> str: bc
2) 슬라이싱 단계 설정
: [n:m:숫자] 를 이용하면 슬라이싱할때 단계를 설정할 수 있다.
students = ['홍길동', '박찬호', '이용규','강호동', '박승철', '김지은'] print(f'students : {students[::2]}') print(f'students : {students[0:5:2]}') >>> students : ['홍길동', '이용규', '박승철'] students : ['홍길동', '이용규', '박승철']
3) 슬라이싱을 이용한 아이템 변경
students = ['홍길동', '박찬호', '이용규','강호동', '박승철', '김지은'] print(f'students : {students}') print(f'students : {students[1:4]}') students[1:4] = ['park chanho','lee yonggyu', 'gang hodong'] print(f'students : {students}') >>> students : ['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은'] students : ['박찬호', '이용규', '강호동'] students : ['홍길동', 'park chanho', 'lee yonggyu', 'gang hodong', '박승철', '김지은']
4) slice() 함수
students = ['홍길동', '박찬호', '이용규','강호동', '박승철', '김지은'] print(f'students : {students}') print(f'students : {students[slice(1,4)]}') print(f'students : {students[slice(1,len(students))]}') >>> students : ['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은'] students : ['박찬호', '이용규', '강호동'] students : ['박찬호', '이용규', '강호동', '박승철', '김지은']
'Language > 자료구조' 카테고리의 다른 글
튜플(Tuple) (0) 2024.05.23 리스트(List) > 그 외 기능 (0) 2024.05.23 [Python] enumerate() 함수 (0) 2024.05.22 [Python] 리스트(List) > 리스트와 반복문 (0) 2024.05.21 [Python] 리스트(List) (0) 2024.05.21