🚀 Python 자료형 완벽 정리 – 리스트 활용하기!
Python에는 여러 개의 데이터를 저장하고 다룰 수 있는 다양한 자료형이 존재합니다.
이번 글에서는 리스트(List), 튜플(Tuple), 딕셔너리(Dictionary) 와 같은 기본 자료형 중 리스트(List)을 배워보고 활용법을 익혀보겠습니다. 😊
1. 리스트(List) – 여러 개의 데이터를 저장하는 순서형 자료형
리스트는 여러 개의 값을 하나의 변수에 저장할 수 있는 자료형입니다.
✅ 대괄호([])를 사용하여 생성하며, 요소들은 순서(인덱스)를 가짐
fruits = ["사과", "바나나", "딸기", "포도"]
print(fruits) # ['사과', '바나나', '딸기', '포도']
✅ 리스트의 주요 특징
- 여러 개의 데이터를 순서대로 저장할 수 있음
- 인덱스(Index)를 사용하여 개별 요소에 접근 가능
- 요소 수정, 추가, 삭제 가능 (가변형, Mutable)
📌 리스트 요소 접근 (인덱싱 & 슬라이싱)
Python에서 리스트(List)는 여러 개의 데이터를 순서대로 저장하는 자료형으로, 각 요소는 고유한 인덱스(index)를 가집니다.
이를 활용하면 특정 요소를 가져오거나(인덱싱), 일부 요소를 잘라서 새로운 리스트로 만들 수 있습니다(슬라이싱).
✅ 1) 인덱싱(Indexing) – 특정 요소 접근하기
리스트의 각 요소는 0부터 시작하는 인덱스를 가집니다.
fruits = ["사과", "바나나", "딸기", "포도"]
위 리스트에서 각 요소의 인덱스는 다음과 같습니다.
요소 | 사과 | 바나나 | 딸기 | 포도 |
인덱스(양수) | 0 | 1 | 2 | 3 |
인덱스(음수) | -4 | -3 | -2 | -1 |
✅ 리스트에서 특정 요소 가져오기
print(fruits[0]) # 사과 (첫 번째 요소)
print(fruits[1]) # 바나나 (두 번째 요소)
print(fruits[2]) # 딸기 (세 번째 요소)
print(fruits[3]) # 포도 (네 번째 요소)
✅ 음수 인덱스를 활용한 요소 접근
Python에서는 음수 인덱스(Negative Indexing) 를 사용할 수 있습니다.
음수 인덱스를 사용하면 리스트의 뒤에서부터 요소에 접근할 수 있습니다.
print(fruits[-1]) # 포도 (마지막 요소)
print(fruits[-2]) # 딸기 (뒤에서 두 번째 요소)
print(fruits[-3]) # 바나나 (뒤에서 세 번째 요소)
print(fruits[-4]) # 사과 (뒤에서 네 번째 요소)
📌 양수 인덱스 vs 음수 인덱스 활용 팁
- 리스트의 앞쪽에서 요소를 찾을 때는 양수 인덱스 사용
- 리스트의 끝에서부터 요소를 찾을 때는 음수 인덱스 사용
✅ 2) 슬라이싱(Slicing) – 리스트 일부 가져오기
슬라이싱(Slicing)은 리스트에서 여러 개의 요소를 한 번에 가져오는 방법입니다.
✅ 슬라이싱은 리스트[start:stop] 형식으로 사용하며, stop 인덱스는 포함되지 않습니다.
fruits = ["사과", "바나나", "딸기", "포도"]
print(fruits[1:3]) # ['바나나', '딸기']
❇️참고!
리스트[:stop] -> 첫 인덱스부터 stop 인덱스 전 까지
print(fruits[:2]) # ['사과', '바나나']
리스트[start:] -> start 인덱스부터 끝 까지
print(fruits[2:]) # ['딸기', '포도']
✅ 슬라이싱 동작 방식 ([start:stop])
- start 인덱스부터 시작하여 stop-1 인덱스까지 가져옴
- stop 인덱스의 요소는 포함되지 않음
요소 | 사과 | 바나나 | 딸기 | 포도 |
인덱스(양수) | 0 | 1 | 2 | 3 |
예제 분석
fruits[1:3] # ['바나나', '딸기']
- start = 1 → 바나나에서 시작
- stop = 3 → 인덱스 3인 "포도"는 포함되지 않음
- 최종 결과 → ['바나나', '딸기']
✅ 3) 다양한 슬라이싱 예제
코드 | 결과 | 설명 |
fruits[:2] | ['사과', '바나나'] | 처음부터 인덱스 2 전까지 |
fruits[1:] | ['바나나', '딸기', '포도'] | 인덱스 1부터 끝까지 |
fruits[-3:-1] | ['바나나', '딸기'] | 뒤에서 3번째 요소부터 뒤에서 1번째 전까지 |
fruits[:] | ['사과', '바나나', '딸기', '포도'] | 전체 리스트 복사 |
fruits[::2] | ['사과', '딸기'] | 처음부터 끝까지 2칸씩 건너뛰며 가져오기 |
fruits[::-1] | ['포도', '딸기', '바나나', '사과'] | 리스트를 거꾸로 뒤집기 |
📌 리스트 요소 추가 및 삭제
✅ .append() 리스트에 요소 추가하기
fruits = ["사과", "바나나", "딸기", "포도"]
fruits.append("망고") # 리스트 끝에 추가
print(fruits) # ['사과', '바나나', '딸기', '포도', '망고']
✅ .remove() 리스트에서 요소 삭제하기
fruits.remove("바나나") # 특정 요소 삭제
print(fruits) # ['사과', '딸기', '포도', '망고']
✅ . pop() : 리스트에서 마지막 요소 삭제
last_fruit = fruits.pop() # 마지막 요소 제거
print(last_fruit) # '망고'
print(fruits) # ['사과', '딸기', '포도']
✅ . sort() : 리스트 정렬하기
numbers = [3, 1, 4, 2, 5]
numbers.sort() # 오름차순 정렬
print(numbers) # [1, 2, 3, 4, 5]
🚀 마무리 및 다음 글 예고
이번 글에서는 Python의 리스트(List)를 배워봤습니다. 🎉
✅ 리스트 → 요소를 자유롭게 추가/삭제할 수 있는 가변형 자료형
📌 다음 글에서는 Python의 튜플(Tuple), 딕셔너리(Dictionary) 자료형을 소개해 드리겠습니다! 😊
'Python' 카테고리의 다른 글
[일단!]Python 자료형 완벽 정리 – 튜플, 딕셔너리, 집합 (28) | 2025.02.11 |
---|---|
[일단!] Python 기초 배우기 – 변수(variable) (20) | 2025.02.09 |
[일단!] Python 기초 배우기 – 초보 개발자 프로그래밍 (2) | 2025.02.09 |