-
[Python] 자료형 - DictionaryNAN/Python 2021. 6. 2. 00:36728x90
파이썬 자료형의 종류
- 숫자 자료형
- 문자열 자료형
- 리스트
- 튜플
- 딕셔너리
- 집합
딕셔너리 정의 파이썬에서 사용되는 딕셔너리란 문자 그대로의 의미인 '사전'이라는 뜻을 가지고 있다.
일반적으로 사전은 좌측에 특정한 의미를 가진 단어가 나열되어있고
우측에는 그 단어가 가진 뜻이 풀이되어있는데, 파이썬에서 사용되는 딕셔너리도 이와 마찬가지로
좌측 값이 Key, 우측 값이 Value로 한 쌍을 이루고 있는 게 바로 딕셔너리 형태의 자료형이다.
# 딕셔너리 기본 형태 a = {key : value}
코드를 구성할 때는 중괄호 ' { } '를 이용하고 key 값과 value 값을 구분하기 위해 콜론 ' : '을 사용하여 구역을 나눈다.
리스트와 튜플에서는 구성된 값들의 순서(index)가 중요했지만,
딕셔너리 형태에서는 이 순서는 각 값들을 나타내는 좌표가 되지 못 합니다.
왜냐하면 딕셔너리에서는 key 값이 각 요소들의 좌표를 대신하기 때문입니다.
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } print(a['안경']) print(a['책']) ['바나나', '콜라', '이어폰'] (1, 2, 3, 4)
이처럼 인덱스의 해당 번호가 아닌 Key로 지정된 요소를 불러옴으로써 값으로 할당된 요소를 출력 해 낼 수 있다.
다만 딕셔너리를 사용할 때에는 몇 가지 제한사항이 있는데 그 목록은 다음과 같다.
- key 값은 고유한 값으로 동일 한 이름을 가진 key는 존재할 수 없다 만약, 동일한 key 값이 있다면 여러 개의 value 중 하나만 선택하고 출력하게 된다.
- key 값에는 list, tuple, dictionary의 사용이 불가능하다. ( value 값에는 사용이 가능하다.)
두 가지 규칙만 준수한다면 dictionary에는 쌍추가, 요소 삭제 등이 가능하다.
쌍 추가하기
# 딕셔너리 쌍 추가 a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' print(a) {'안경': ['바나나', '콜라', '이어폰'], '책': (1, 2, 3, 4), '사과': '맛있어'}
딕셔너리에 새로운 쌍을 추가할 때 초심자들이 자주 혼동하는 부분은 변수에 새로운 키, 값
예시를 기준으로 a [ ] 대괄호 부분에 중괄호 { }를 사용하는 경우이다.
딕셔너리를 나타내는 형태는 중괄호이지만 새로운 키, 값을 추가할 때에는 리스트와 마찬가지로 대괄호를 사용한다.
예시를 조금 더 풀어 보자면 변수 a의 '사과'라는 key는 '맛있어'라는 value를 갖는다 라고 받아들이면 되겠다.
쌍 제거하기
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' del a['안경'] print(a) {'책': (1, 2, 3, 4), '사과': '맛있어'}
우리는 자료형 list에 대해 공부할 때 요소 제거 함수 del을 알아보았는데
del은 리스트 튜플 딕셔너리 가리지 않고 사용된다. del을 사용하여 딕셔너리를 제거할 때에는
value 값을 넣는 게 아닌 key 값을 지정하여 사용하면 key, value가 함께 삭제되는 것을 확인할 수 있다.
dictionary 관련 함수
keys - key 리스트 만들기
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' print(a.keys()) dict_keys(['안경', '책', '사과'])
변수. keys( )의 함수 형태로 딕셔너리 안의 모든 key 값을 호출할 수 있다.
values - value
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' print(a.values()) dict_values([['바나나', '콜라', '이어폰'], (1, 2, 3, 4), '맛있어'])
변수. values( )의 함수 형태로 모든 value 값을 호출할 수 있다.
items - key, value 쌍으로 얻기
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' print(a.items()) dict_items([('안경', ['바나나', '콜라', '이어폰']), ('책', (1, 2, 3, 4)), ('사과', '맛있어')])
특정 key가 딕셔너리 안에 있는지 확인 - in
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' print('사과' in a) True
찾고자 하는 ' key 값 in 변수 ' 의 형태로 사용하며 True와 False로 결과를 출력한다.
get - key로 value 얻기
a = {'안경':['바나나','콜라','이어폰'], '책' : (1, 2, 3, 4), } a['사과'] = '맛있어' print(a.get('책')) (1, 2, 3, 4)
변수. get(key)로 구성되어 있으며 value 값을 출력해 낸다.
'NAN > Python' 카테고리의 다른 글
[Python] bool 연산자와 조건문 (0) 2021.06.06 [Python] 자료형 - set (0) 2021.06.04 [Python] 자료형 - List, Tuple (0) 2021.05.26 [Python] 자료형 - 숫자 자료형 (0) 2021.05.22 [Python] 자료형 - 문자열 (1) 2021.05.22