리스트: '인덱스(Index)' 기반으로 값을 저장(순서 기반)
- 파이썬에서 가장 흔히 사용하는 데이터의 자료구조
- 순서가 있다.
- [ ] 대괄호로 묶어 사용한다.
- 리스트 안에 들어가는 요소들은 ,(쉼표)로 구분한다.
리스트 내부에는 아래와 같이 정수, 실수, 문자열 뿐만 아니라 자료구조인 list 등 자료구조도 포함시킬 수 있습니다.
test_list = [1, 3, 4, 8, 9, 100, 3.14, '안녕', ['coin', 'card', 'cash', 'id', 'licence'], 150]
위에서 말했듯이 리스트는 '인덱스' 기반으로 인덱싱과 슬라이싱이 가능합니다.
인덱싱: 리스트의 특정항목에 접근하기 위해 사용
첫 번째 요소를 기준으로 인덱스는 0부터 시작(위의 경우 첫 번째 요소인 1이 인덱스 0)
뒤에서부터 시작한다면 -1부터 시작이다.(마지막 변수 -1, 뒤에서 두 번쨰 변수: -2)
ex) 아래의 경우 1과 150이 출력된다
print(test_list[0])
print(test_list[-1])
만약 test_list에서 'coin'만 추출하고 싶다면 어떻게 해야할까?
먼저 test_list[3]을 해보면 ['coin', 'card', 'cash', 'id', 'licence']이 추출되는데 이 추출된 리스트에서 [0]이 'coin'이다.
그래서 test_list[3][0]을 하면 'coin'을 추출할 수 있다.
슬라이싱:리스트의 여러개의 값의 묶음에 접근하기 위해 사용
슬라이싱은 test_list[출력 시작 인덱스 : 출력 마지막인덱스 + 1] 이런 형태로 사용이 가능합니다.
ex) 아래의 코드를 실행하면 [1, 3, 4, 8]이 출력이 됩니다.
test_list[0:4]
출력하고 싶은 요소가 맨 앞이나 뒤에 있는 경우 첫 인덱스와 맨 뒤의 인덱스는 생략이 가능합니다.
ex) test_list[:4]도 마찬가지로 [1, 3, 4, 8]이 출력이 되고 test_list[5:]는 [100, 3.14, '안녕', ['coin', 'card', 'cash', 'id', 'licence'], 150] 이렇게 출력이 됩니다.
test_list[:4]
test_list[5:]
이를 응용하여 아래 리스트의 전체 항목 중 '2의 배수인 인덱스' 항목을 추출 해봅시다.
test_list2 = [10,20,30,40,50,60,70,80,90,100]
위의 문제를 해결하기 위해 test_list[시작인덱스 : 마지막인덱스+1 : step] 형식을 이용해보면
[20, 40, 60, 80, 100]이 출력됩니다.
test_list[1::2]
'Pandas, Numpy' 카테고리의 다른 글
| 자주 사용하는 Numpy, Pandas 함수 정리 (2) | 2023.08.27 |
|---|---|
| 클래스에 대해 알아보자. (0) | 2023.08.03 |
| Python으로 구해보는 기초통계량(산술평균, 기하평균) (0) | 2023.07.21 |