Python | Error (KeyError)

김민철·2020년 12월 11일
1
post-thumbnail

Key Error 이전에 Error 를 먼저 보겠습니다.

Python에서 에러가 발생하는 가장 일반적인 이유는 특정 코드가 규정된 용도에 따르지 않을 때 발생합니다.
그럼 에러가 Raise 되면 어떤 일이 일어날까요 ?
파이썬은 에러가 발생하면 더 이상 코드를 읽지 않고 서버를 죽이게 됩니다. 그렇기 때문에 개발자는 예외처리를 통해 코드를 계속 읽을 수 있게 해줘야합니다.

그렇다면 Key Error 는 파이썬의 어떠한 용도를 따르지 않았기에 발생하는 걸까요 ?
KeyError 는 딕셔너리 키가 기존 키 집합에서 발견되지 않을 때 발생하게 됩니다.

간단한 예를 보겠습니다.

이렇게 딕셔너리에 없는 키를 실행시키면 파이썬은 KeyError 를 발생합니다.
에러가 발생하게 되면 파이썬은 다음 코드를 읽지않기 때문에 print('mincheol') 은 실행되지 않습니다.

KeyError 가 발생해도 print('mincheol') 을 실행시키려면 어떻게해야 할까요?

try / exception 을 사용하면 코드를 멈추지 않아도 되고, 에러의 원인도 찾을 수 있습니다.

딕셔너리에는 get() 메소드가 존재합니다. get() 메소드를 사용하면 존재하는 키에 대해선 그 값을 가져오고 존재하지 않는 키에 대해선 None을 반환합니다. 그렇기에 KeyError 또한 발생시키지 않으려면 get() 메소드를 사용해 딕셔너리의 키값을 가져오면 됩니다.

참고 - https://docs.python.org/ko/3/tutorial/errors.html

0개의 댓글