학습
Python 컬렉션 (Collections) 활용
Python 컬렉션 (Collections) 활용 — 중급
컬렉션 (Collections) 활용
1. 도입 (왜 배워야 하는가)
컬렉션은 데이터를 효율적으로 저장하고 관리하는 데 필수적인 도구입니다. 실무에서는 대량의 데이터를 처리하거나 여러 데이터를 그룹으로 묶어야 하는 경우가 많습니다. 예를 들어, 쇼핑몰에서는 고객의 장바구니에 담긴 상품들을 관리하기 위해 여러 개의 데이터를 한곳에 모아야 합니다. 컬렉션을 모르면 데이터의 관리와 처리가 비효율적이 되어 코드의 가독성이 떨어지고, 유지보수 비용이 증가할 수 있습니다.
2. 핵심 개념 설명
컬렉션은 여러 데이터를 저장할 수 있는 데이터 구조를 말합니다. Python에서 가장 많이 사용되는 컬렉션은 list, tuple, set, dict입니다. 각각의 특징을 살펴보겠습니다.
| 컬렉션 타입 | 설명 | 사용 예시 |
|---|---|---|
| list | 순서가 있는 변경 가능한 집합 | [1, 2, 3] |
| tuple | 순서가 있는 변경 불가능한 집합 | (1, 2, 3) |
| set | 순서가 없고 중복이 없는 집합 | {1, 2, 3} |
| dict | 키-값 쌍으로 이루어진 집합 | {'a': 1, 'b': 2} |
비유하자면, list는 장바구니, tuple은 봉인된 상자, set은 친구 목록, dict는 주소록이라고 할 수 있습니다. 각각의 상황에서 데이터의 필요성과 사용 방식이 다릅니다.
3. 기본 코드 예제
여기서는 list와 dict의 기본적인 사용법을 살펴보겠습니다.
리스트 예제
# 리스트 생성
shopping_cart = ['사과', '바나나', '오렌지']
# 리스트에 아이템 추가
shopping_cart.append('포도')
# 리스트 출력
print(shopping_cart)
- 실행 결과:
['사과', '바나나', '오렌지', '포도'] - 동작 설명:
1. shopping_cart라는 리스트를 생성하여 초기 아이템을 넣는다.
2. append() 메서드를 사용해 '포도'를 리스트에 추가한다.
3. print() 함수를 통해 리스트의 현재 상태를 출력한다.
딕셔너리 예제
# 딕셔너리 생성
user_info = {'이름': '홍길동', '나이': 30}
# 값 수정
user_info['나이'] = 31
# 딕셔너리 출력
print(user_info)
{'이름': '홍길동', '나이': 31}1. user_info라는 딕셔너리를 생성하고, 이름과 나이를 키-값 쌍으로 설정한다.
2. '나이' 키에 해당하는 값을 31로 수정한다.
3. print() 함수를 통해 딕셔너리의 현재 상태를 출력한다.
4. 실전 활용 예제
예제 1: 쇼핑몰 장바구니 구현
shopping_cart = []
# 상품 추가
def add_to_cart(item):
shopping_cart.append(item)
print(f"{item}가 장바구니에 추가되었습니다.")
add_to_cart('사과')
add_to_cart('바나나')
print(shopping_cart)
예제 2: 사용자 정보 관리
users = {}
# 사용자 추가
def add_user(username, age):
users[username] = age
print(f"{username}가 추가되었습니다.")
add_user('홍길동', 30)
add_user('김철수', 25)
print(users)
5. 흔한 실수와 주의사항
실수 1: 리스트의 인덱스 범위 초과
# 잘못된 코드
shopping_cart = ['사과', '바나나']
print(shopping_cart[2]) # IndexError
실수 2: 딕셔너리의 키가 존재하지 않음
# 잘못된 코드
user_info = {'이름': '홍길동'}
print(user_info['나이']) # KeyError
6. 정리
list, tuple, set, dict의 기본 개념과 사용법을 이해해야 한다.리스트 컴프리헨션, 제너레이터, 데이터베이스 연동