리스트(list), 튜플(tuple), 딕셔너리(dict)는 각각의 특징이 있으며, 상황에 따라 적절하게 선택해서 사용하는것이 좋다.
리스트
리스트의 특징
- 순서(인덱스)가 있음 -> 요소에 index로 접근 가능
- 변경 가능(mutable) -> 요소를 추가, 삭제, 수정할 수 있음
- 중복된 값 허용
- 다양한 자료형을 혼합해서 저장 가능
언제 사용하나?
- 데이터가 변경될 가능성이 있을 때
- 순서가 중요한 데이터 저장이 필요할 때
- 동일한 데이터 유형을 반복적으로 다룰 때
튜플
튜플의 특징
- 순서(인덱스)가 있음 -> 리스트처럼 인덱스로 접근 가능
- 변경 불가능 (immutable) -> 생성 후 요소 추가, 삭제, 수정 불가
- 중복된 값 허용
- 다양한 자료형을 혼합해서 저장 가능
언제 사용하나?
- 데이터가 변하지 않아야 할 때 (예:좌표, 설정값, DB 레코드 등)
- 리스트보다 속도가 중요할 때(튜플이 리스트보다 속도가 빠름)
- 데이터의 무결성을 유지하고 싶을 때(값이 변경되지 않도록 보호해야 하는 경우)
딕셔너리
딕셔너리의 특징
- 키(key)와 값(value)의 쌍으로 저장됨 -> 인덱스 대신 key로 접근
- 순서 보장(python 3.7부터)
- 변경 가능(mutable) -> 요소 추가, 삭제, 수정 가능
- 키는 중복 불가능 (고유해야 함), 값은 중복 가능
언제 사용하나?
- 이름(키)으로 데이터를 관리할 때 (예:JSON 데이터, 설정 파일)
- 빠른 검색이 필요할 때(keyf로 접근하면 속도가 빠름)
- 데이터 간의 관계를 저장할 때(예: 학생 정보, 상품 정보)
items()함수를 사용하면 딕셔너리에 있는 키와 값들의 쌍을 얻을 수 있다.
리스트, 튜플, 딕셔너리 비교
마무리
1. 순서가 중요한 데이터 -> 리스트
- 예: 학생 명단, 로그 데이터, 대기열
2. 변경하면 안 되는 데이터 -> 튜플
- 예: 좌표, RGB 색상 값, 고정된 설정 값
3. 이름(key)로 데이터를 관리해야 할 때 -> 딕셔너리
- 예: 사용자 정보, 설정 파일(JSON), API 응답 데이터