딕셔너리 자료형은 아래와 같이 사용할 수 있습니다.
>>> dic = {}
>>> dic['dictionary'] = '1. A reference book containing an ...'
>>> dic['python'] = 'Any of various nonvenomous snakes of the ...'
>>> dic['dictionary']
'1. A reference book containing an ...'
포켓용 사전을 만들어 볼까요?
>>> smalldic = {'dictionary': 'reference', 'python': 'snake'}
>>> smalldic['python']
'snake'
>>> smalldic
{'dictionary': 'reference', 'python': 'snake'}
좀 더 깔끔해졌죠? 유심히 보시면 아까와는 조금 다른 방법으로 딕셔너리를 만들었다는 것도 아실 수 있겠지요?
이와 같이 딕셔너리 자료형은 키(key)와 값(value)의 쌍으로 이루어진답니다.
문자열, 리스트, 튜플은 숫자로 된 인덱스를 이용해 값을 조회하는데, 딕셔너리는 키를 이용한다는 것이 큰 차이점이죠. 또, 딕셔너리 자료형은 해싱(hashing) 기법을 이용하기 때문에 자료가 순서대로 저장되지 않는다고 하네요.
딕셔너리 자료형을 만들고, 원소를 추가하는 방법은 위에서 보신 대로이구요, 원소를 삭제할 땐 이렇게 하시면 됩니다.
>>> del smalldic['dictionary']
삭제가 잘 되었는지 한번 확인해 보세요.
이번에는 family라는 딕셔너리를 만들어 볼게요.
>>> family = {'mom': 'Kim', 'dad': 'Choi', 'baby': 'Choi'}
>>> family
{'mom': 'Kim', 'dad': 'Choi', 'baby': 'Choi'}
family의 키들을 얻으려면 딕셔너리 이름 뒤에 .keys()를 쓰면 됩니다.
>>> family.keys() dict_keys(['mom', 'dad', 'baby'])
family의 값들을 얻으려면 딕셔너리 이름 뒤에 .values()를 쓰면 됩니다.
>>> family.values() dict_values(['Kim', 'Choi', 'Choi'])
family의 원소(키/값 쌍)들을 얻으려면 이름 뒤에 .items()를 쓰면 됩니다.
>>> family.items()
dict_items([('mom', 'Kim'), ('dad', 'Choi'), ('baby', 'Choi')])
딕셔너리에 어떤 키가 있는지 없는지는 in을 써서 알아볼 수 있습니다. 있으면 True, 없으면 False라고 대답해주죠.
>>> 'dad' in family True >>> 'sister' in family False