각 사물함이 누구에게 할당됐는지 확인해 볼까요? 변수나 리스트가 인덱스로 값에 접근한다면 딕셔너리는 인덱스 역할을 key가 합니다. 그래서 딕셔너리명에 대괄호를 붙이고 그 안에 key를 넣으면 key에 해당하는 value에 접근할 수 있습니다.
print(cabinet[3]) # key 3에 해당하는 value
print(cabinet[100]) # key 100에 해당하는 value
실행결과 |
푸 피글렛 |
대괄호 대신 get() 함수를 사용해도 알 수 있습니다. 이때 리스트와 마찬가지로 점(.)으로 딕셔너리와 함수를 연결합니다.
print(cabinet.get(3)) # key 3에 해당하는 value
실행결과 |
푸 |
그런데 대괄호를 사용할 때와 get() 함수의 결과가 완전히 같지는 않습니다. 대괄호를 사용할 때 만약에 정의되지 않은 key를 전달하면 오류가 발생하고 프로그램을 바로 종료합니다. 그러나 get() 함수를 사용하면 정의되지 않은 key를 전달하더라도 오류가 발생하지 않고, None을 출력합니다. 그리고 프로그램은 계속 실행됩니다.