본문 바로가기

컴퓨터 관련/파이썬

[파이썬] 4. 인덱싱과 슬라이스

728x90
반응형

1. 인덱싱

  • 인덱싱: 원소를 추출

1.1. 인덱싱의 기본형

Variable = Name of List/Tuple/range/String[index]

# Variable: 인덱싱으로 뽑아온 값을 저장하기 위한 변수
# Name of List/Tuple/range/String: 시퀸스 객체의 변수 이름
# index: 시퀸스 객체의 특정한 위치를 지정

1.2. 리스트 인덱싱

a = [1,2,3,4,5]
print(a[0]) # 양수 인덱스는 0부터 시작
print(a[-1]) # 음수 인덱스는 -1부터 시작
print(a[0] + a[2]) # 인덱스를 이용해 값을 가져울 수 있음
  • 중첩 리스트 인덱싱
a = [1,2,3,['1','2','3']]
print(a)
print(a[-1]) # 마지막에 리스트가 있음
print(a[-1][-1]) # 중첩 리스트의 인덱싱
'''
첫번째 인덱스는 첫번째 리스트의 원소를 의미.
두번째 인덱스는 중첩 리스트의 원소를 의미.
(다차원 리스트 인덱싱도 동일함)
'''

1.3. 튜플 인덱싱 예시

a = (1,2,3,4)
print(a[3])
print(a[-1])

1.4. range()의 인덱싱 예시

a = range(0,5,1)
print(a[3])
print(a[-1])

1.5. 문자열 인덱싱 예시

a = "python"
print(a[3])
print(a[-1])

2. 슬라이싱

  • 슬라이스: 부분 리스트 추출

2.1. 슬라이싱의 기본형

Variable = Name of List/Tuple/range/String[StartIndex:EndIndex:step]

# Variable: 슬라이싱으로 뽑아온 리스트를 저장할 변수
# Name of List/Tuple/range/String: 시퀸스 객체의 변수 이름
# StartIndex: 뽑기를 시작할 위치를 지정
# EndIndex: 뽑기를 끝낼 위치를 지정 (지정된 수보다 -1로 설정됨.)
# step: 인덱스 증가폭

2.2. 슬라이싱의 예시

a = [1,2,3,4,5]
print(a[2]) # 일반적인 사용
print(a[:3]) # 시작점을 생략, 시작점부터 끝 인덱스까지 슬라이싱
print(a[3:]) # 끝점을 생략, 시작 인덱싱부터 끝점까지 슬라이싱
print(a[:]) # 전체 리스트 출력
print(a[0:3:2]) # 증가폭만큼 건너뛰고 슬라이싱
print(a[::-1]) # 리스트 전체 슬라이싱

2.3. 리스트 슬라이스 예시

a = [1,2,3,4,5]
print(a[2:4])
print(a[0:6])
print(a[0:1]) #a[0]과 같지 않음. 부분 리스트 처리됨.

2.4. 튜플의 슬라이스 예시

a = (0,5,1)
a[0:2]

2.5. range()의 슬라이스 예시

a = range(0,5,1)
a[0:3]

2.6. 문자열 슬라이스 예시

a = "python"
print(a[0:3])
반응형