아직 할당하지 않은 5번 사물함 열쇠로 확인해 보겠습니다.
print(cabinet.get(5))
print("hi")
print(cabinet[5])
print("hi")
실행결과 |
None hi KeyError: 5 |
get() 함수일 때는 None을 출력한 후 hi까지 출력하고 종료합니다. 하지만 대괄호를 사용할 때는 오류 메시지가 나오면서 hi를 출력하지 않고 프로그램을 종료합니다.
get() 함수는 다른 기능도 있습니다. 5번 사물함은 아직 사용자가 없으니 이름 대신 ‘사용 가능’이라는 기본값으로 설정하고 싶습니다. 이럴 때 get() 함수를 사용합니다. 다음과 같이 get() 함수로 기본값을 설정하면 5번 열쇠를 누군가 사용하기 전까지, 즉 key 5에 해당하는 value를 정의하기 전까지는 ‘사용 가능’으로 나옵니다.
print(cabinet.get(5, "사용 가능")) # key에 해당하는 값이 없으면 기본값을 사용하게 함
실행결과 |
사용 가능 |