Python

파이썬 인덱싱 슬라이싱

하카데미 2022. 12. 1. 11:50

파이썬으로 코딩하게 되면 자주 보게 되는 것이
iterable  어쩌고 하는 에러 문장이다.
iterable은 반복 가능한 객체를 말하는데,
파이썬에서 iterable 타입은
튜플, 리스트, 딕셔너리, 문자열 등이다.
이 중 딕셔너리를 제외하고 인덱싱과 슬라이싱이 가능하다.
인덱싱과 슬라이싱으로 값을 조회, 수정, 삭제, 추가가 가능하다.
물론 수정이 불가한 튜플에선 조회만 가능하다.

인덱싱란 1개의 값에 접근할 수 있고,
슬라이싱은 어느 부분의 값들에 접근할 수 있다.

인덱싱과 슬라이싱은 번호로 접근할 수 있는데
0번 부터 시작이고,
뒤에서 부터 가져오고 싶은 경우 -1 부터 가능하다.

char_str = "Life is too Short"
test_list = ["a", "b", "c", "d"]
test_tuple = (1, 2, 3, 4, 5)


인덱싱

print(char_str[0])
print(char_str[-1])
print(test_list[1])
print(test_tuple[5])


이 코드를 한줄씩 실행해보면 마지막 줄에서 에러가 발생할 것이다.
이유는 그 자리는 존재하지 않기 때문.
만약 길이를 알 수 없을 때에는
len(test_tuple) 을 통해 길이를 알 수 있다.

 

len(char_str)
len(test_list)
len(test_tuple)



슬라이싱

print(char_str[0:3])
print(char_str[-5:])
print(test_list[1:3])
print(test_tuple[:2])


코드를 한줄씩 실행해보면 의아할 것이다.
콜론 뒷번호 자리까지 값을 조회해주지 않아서.
0:3 의 의미는 첫번째의 값부터 3(즉, 4번째)번째 값의 앞까지 조회해달란 의미다.
첫번째(0)부터 세(2)번째까지의 값이 조회된다.

-5: 의 의미는 마지막 5번째 자리부터 끝까지를 의미한다.
:2 의 의미는 첫번째부터 두번째 자리까지를 의미하게 된다.