[Python]dictionary(HashMap)
딕셔너리란?
* key, value를 한 쌍으로 가지는 자료형
* 딕셔너리에서의 Key는 고유한 값으로 중복되는 Key 값을 설정해 놓으면 하나를 제외한 나머지 것들이 모두 무시된다.
* 리스트나 튜플처럼 순차적으로(sequential) 해당 요솟값을 구하지 않고 Key를 통해 Value을 얻는다.
딕셔너리 예시
dic = {'name' : 'jungmin', 'phone' : '010-9***-9***', 'birth':'0703'}
이 때 키 값은 'name', 'phone', 'birth'
'name' 값을 이용해 dic['name'] 을 입력하면 'jungmin' 을 얻을 수 있다.
딕셔너리 쌍 추가하기
dic['city'] = 'Seoul'
print(dic)
실행결과
dic = {'name' : 'jungmin', 'phone' : '010-9***-9***', 'birth':'0703', 'city':'Seoul'}
딕셔너리 요소 삭제하기
del dic['phone']
del dic[key값]
실행결과
dic = {'name' : 'jungmin', 'birth':'0703', 'city':'Seoul'}
딕셔너리 관련 함수
Key 리스트 만들기 - keys
dic = {'name' : 'jungmin', 'phone' : '010-9***-9***', 'birth':'0703', 'city':'Seoul'}
print(dic.keys())
실행결과
* dic.keys()는 딕셔너리 dic의 Key만 모아 dict_keys 객체를 리턴
dict_keys(['name', 'phone', 'birth', 'city' ]}
*dic.keys 객체를 리스트로 변환하려면 다음과 같이 해야 한다.
list(dic.keys())
Value 리스트 만들기 - values
dic.values()
실행결과
dict_values(['jungmin', '010-9****-9****', '0703', 'seoul'])
Key, Value 쌍 얻기 - items
dic.items()
실행결과
dict_items([('name' : 'jungmin'), ('phone' : '010-9***-9***'), ('birth':'0703'), ('city':'Seoul')]}
items 함수는 Key와 Value의 쌍을 튜플로 묶은 값을 dict_items 객체로 리턴한다.
Key: Value 쌍 모두 지우기 - clear
dic.clear()
Key로 Value 얻기 - get
dic = {'name' : 'jungmin', 'phone' : '010-9***-9***', 'birth':'0703', 'city':'Seoul'}
dic.get('name')
get(key) 함수는 key에 대응되는 Value를 리턴한다.
dic.get('name') 은 dic['name'] 을 사용했을 때와 동일한 결괏값을 리턴한다.
또한, dic['name'] 처럼 딕셔너리에 존재하지 않는 키로 값을 가져오려고 할 경우, dic['name']은 오류를 발생시키고 dic.get('name') 방식은 None을 리턴한다.