728x90
반응형
Python 자료구조 알아보기: 리스트, 튜플, 딕셔너리, 집합(Set)의 차이점
안녕하세요, 우리는 Python에서 자주 사용되는 네 가지 자료 구조인 리스트(List), 튜플(Tuple), 딕셔너리(Dictionary), 집합(Set)에 대해 알아보았습니다. 각각의 자료 구조는 고유한 특성과 장점을 가지고 있어 다양한 상황에 따라 적절하게 사용될 수 있습니다. 이 포스트에서는 각 자료 구조의 특징과 차이점을 명확하게 이해해 보세요!
1. 리스트 (List)
리스트(List)는 데이터를 순서대로 저장하고 변경 가능한 시퀀스입니다. 다음은 리스트의 주요 특징입니다.
- 정의: 데이터의 순서가 있는 변경 가능한 시퀀스입니다.
- 특징:
- 요소 간 순서가 유지됩니다.
- 요소를 추가, 삭제, 수정할 수 있습니다.
- 중복 요소를 허용합니다.
- 대괄호
[]
로 표현됩니다.
리스트는 데이터의 추가와 수정이 빈번한 경우에 유용합니다.
- 예제:
my_list = [1, 2, 3, 4] my_list.append(5) # 요소 추가 my_list[1] = 10 # 요소 수정 print(my_list) # [1, 10, 3, 4, 5]
2. 튜플 (Tuple)
튜플(Tuple)은 변경할 수 없는 순서 있는 시퀀스입니다. 불변성이 보장되어 데이터를 안전하게 유지할 때 적합합니다.
- 정의: 데이터의 순서가 있는 변경 불가능한 시퀀스입니다.
- 특징:
- 리스트와 유사하지만 수정이 불가능합니다.
- 요소 간 순서가 유지됩니다.
- 중복 요소를 허용합니다.
- 소괄호
()
로 표현됩니다.
데이터를 변경하지 않고 안전하게 보관해야 하는 경우 튜플을 사용하는 것이 좋습니다.
- 예제:
my_tuple = (1, 2, 3, 4) # my_tuple[1] = 10 # 오류 발생 (튜플은 수정 불가) print(my_tuple) # (1, 2, 3, 4)
3. 딕셔너리 (Dictionary)
딕셔너리(Dictionary)는 키-값 (Key-Value) 쌍으로 데이터를 저장하는 자료구조로, 특정 키를 통해 값을 빠르게 조회할 수 있습니다.
- 정의: 키-값 (Key-Value) 쌍으로 데이터를 저장하는 자료구조입니다.
- 특징:
- 요소 간 순서가 유지됩니다 (Python 3.7 이상).
- 키는 유일해야 하며, 값은 중복 가능합니다.
- 키는 수정 불가능한 객체(문자열, 숫자, 튜플 등)만 사용할 수 있습니다.
- 값은 추가, 삭제, 수정이 가능합니다.
- 중괄호
{}
로 표현됩니다.
딕셔너리는 데이터에 빠르게 접근하고자 할 때 매우 유용합니다.
- 예제:
my_dict = {'name': 'Alice', 'age': 25} my_dict['age'] = 26 # 값 수정 가능 my_dict['city'] = 'Seoul' # 새로운 키-값 추가 가능 print(my_dict) # {'name': 'Alice', 'age': 26, 'city': 'Seoul'}
4. 집합 (Set)
집합(Set)은 고유한 요소만을 저장하며, 요소 간의 순서가 없는 자료구조입니다. 중복을 제거하고자 할 때 유용합니다.
- 정의: 순서가 없는 고유한 데이터의 모음입니다.
- 특징:
- 요소 간 순서가 없습니다 (순서가 중요하지 않을 때 사용).
- 중복 요소를 허용하지 않습니다.
- 변경 가능하며, 요소를 추가, 삭제할 수 있습니다.
- 중괄호
{}
로 표현되지만, 딕셔너리와 구분됩니다 (키-값이 없음). - 집합 연산(합집합, 교집합 등)을 지원합니다.
집합은 데이터의 중복을 제거하고, 집합 연산을 수행할 때 유용합니다.
- 예제:
my_set = {1, 2, 3, 4} my_set.add(5) # 요소 추가 my_set.add(3) # 중복 요소는 무시 print(my_set) # {1, 2, 3, 4, 5}
주요 차이점 비교
특징 | 리스트 (List) | 튜플 (Tuple) | 딕셔너리 (Dictionary) | 집합 (Set) |
---|---|---|---|---|
데이터 저장 구조 | 순서 있는 요소의 모음 | 순서 있는 요소의 모음 | 키-값 쌍의 모음 | 순서 없는 고유 요소의 모음 |
변경 가능 여부 | 변경 가능 | 변경 불가능 | 값 변경 가능 | 변경 가능 |
순서 유지 여부 | 유지됨 | 유지됨 | 유지됨 (Python 3.7 이상) | 유지되지 않음 |
중복 허용 여부 | 허용 | 허용 | 키: 허용 안 됨 / 값: 허용 | 허용 안 됨 |
표현 방식 | [ ] |
( ) |
{키: 값} |
{ } |
사용 사례 | 순서대로 데이터 처리 | 불변 데이터를 안전하게 저장 | 키로 데이터에 빠르게 접근 | 중복 제거, 집합 연산 수행 |
이 네 가지 자료구조를 적절히 활용하면 데이터 처리 및 관리의 효율성을 크게 높일 수 있습니다. 여러분의 Python 개발에 도움이 되길 바랍니다!
감사합니다!
728x90
반응형
'Python > Python' 카테고리의 다른 글
Python 내장 함수와 사용자 정의 함수의 심화 사용법 (0) | 2025.06.30 |
---|---|
Python의 함수(Function)를 소개합니다 (0) | 2025.06.29 |
파이썬의 집합(Set) 자료형 소개 (0) | 2025.06.27 |
Python 딕셔너리의 고급 활용법 (0) | 2025.06.26 |
Python의 딕셔너리 자료구조 소개 (0) | 2025.06.25 |