그럼 이 딕셔너리에서 ‘저가’ 키에 저장된 값은 무엇일까요? 한번 확인해 보겠습니다.
> print(s_price_dict['저가'])
38000
마지막에 선언한 값인 38000이 저장되어 있습니다. 이렇게 동일한 키를 사용하여 값을 저장하면 마지막에 사용한 키 값이 저장됨을 알 수 있습니다. 딕셔너리에 저장된 키와 값을 확인하려고 전체를 출력할 때는 다음과 같이 코드를 작성합니다.
> print(s_price_dict)
{'시가': 40000, '종가': 40100, '고가': 40500, '저가': 38000, '거래량': 1000000}
딕셔너리를 만들 때는 다양한 자료형의 키와 값을 사용할 수 있습니다. 예를 들어 보겠습니다.
test_dict = {0: '1', '0': '2', True: False, 'list': [1, 2, 3]}
test_dict라는 딕셔너리를 보면 키 값으로는 숫자, 문자, 논리형(True, False)을 사용했으며, 키에 저장된 값으로는 문자, 논리형, 리스트를 사용했습니다. 이렇게 다양한 자료형의 키와 값을 사용하여 딕셔너리를 만들 수 있습니다. 하지만 리스트나 튜플을 키에 속하는 값(value)으로 저장할 수는 있어도 키(key)로 사용할 수는 없습니다. 다음은 딕셔너리를 생성할 때 리스트를 키로 사용하여 에러가 발생하는 예입니다.
> test_dict = {[1, 2, 3]:[1, 2, 3]}
> print(test_dict)
(...)
TypeError: unhashable type: 'list'