<이것이 취업을 위한 코딩 테스트다 with 파이썬>
강의를 듣고 정리하는 글입니다.
강의링크 6강. 파이썬 문법 : 사전, 집합 자료형
📌 사전 자료형
- 사전 자료형은 키(key)와 값(Value)의 쌍을 데이터로 가지는 자료형임.
- 순차적으로 저장했던 리스트와 튜플과는 대비됨.
- 변경 불가능한(Immutable)자료형을 키로 사용 가능
- 파이썬 자료형은 해시 테이블을 이용하므로 데이터 조회 및 수정에 있어 O(1)의 시간에 처리 가능.

📌 사전 자료형 관련 함수
- keys() 함수는 키 데이터만 뽑아서 리스트로 이용할 때 사용.
- values() 함수는 값 데이터만을 뽑아서 리스트로 이용할 때 사용.
a = dict()
a[’아이유’] = 100
a[’유재석’] = 200
key_list = a.keys()
print(key_list)
출력 결과 : dict_keys([’아이유’, ‘유재석’]
- keys()라는 함수는 엄밀히 말하면 사전키라는 객체로써 반환되기에 실제 리스트 함수를 이용해서 리스트 형태로 변환하면 됨.
key_list = list(a.key())
print(key_list)
출력 결과 : [’아이유’, ‘유재석’]
print(a[’아이유’])
출력 결과 : 100
📌 집합 자료형
- 집합은 리스트 or 문자열을 이용하여 초기화
- set() 함수 사용
- 또는 중괄호({}) 안에 원소 삽입 후 초기화
- 집합은 중복을 허용하지 않고 순서가 없음
- 데이터의 조회 및 수정에 있어서 O(1)의 시간에 처리 가능
📌 집합 자료형의 연산
- 기본적인 집합 연산으로 합집합, 교집합, 차집합 연산 등이 있음.
- 합집합 : 집합 A에 속하거나 B에 속하는 원소로 이루어진 집합 (A ∪ B)
- 교집합 : 집합 A에 속하고 B에도 속하는 원소로 이루어진 집합 (A ∩ B)
- 차집합 : 집합 A의 원소 중에서 B에 속하지 않는 원소들로 이루어진 집합 (A - B)
- add 함수
- update 함수
- remove 함수
📌사전 자료형과 집합 자료형의 특징
- 사전 자료형과 집합 자료형은 순서가 없기에 인덱싱으로 값을 얻을 수 없음
- 사전의 키(key) 혹은 집합의 원소(Element)를 이용해 O(1)의 시간 복잡도로 조회
- 이때 키나 원소의 값으로는 변경 불가능한 문자열이나 튜플과 같은 객체가 사용되어야 함.