CODEDRAGON ㆍDevelopment/Python
예외 처리 try 구문
try: <예외 발생가능성이 있는 문장> except <예외 종류> : <예외 처리 문장> except (예외 1, 예외 2): <예외 처리 문장> except 예외 as 인자: <예외 처리 문장> except :
else: <예외가 발생하지 않은 경우, 수행할 문장> finally: <예외 발생 유무에 상관없이 try 블록 이후 수행할 문장>
|
|
try ~ except ~ else
· try 블럭 내의 어느 문장에서 에러가 발생하면, except 문으로 이동하고 예외 처리를 할 수 있습니다.
· else절은 예외가 발생하지 않은 경우에 실행되며 반드시 except절 바로 다음에 위치해야 합니다.
· except 뒤에 아무것도 쓰지 않았으면 어떤 에러이든 발생하면 해당 except 블럭을 수행하라는 의미입니다.
· except가 여러 개인 경우는 범위가 보다 좁은 에러타입을 앞에 쓰고 보다 일반적이고 포괄적인 에러타입을 뒤에 작성해 주어야 순차적으로 에러를 캐취할 수 있습니다.
try: ... except : # 예외처리 else: ... finally: ... |
여러개의 Exception들을 동일한 except 블록으로 처리하고자 할 경우 발생 Expception들을 하나의 except 으로 묶어주면 됩니다.
try: ... except (예외 1, 예외 2): # 예외처리 else: ... finally: ... |
try ~ finally
· try문에는 finally절을 사용할 수 있다.
· finally절은 try문 수행 도중 예외 발생 여부에 상관없이 항상 수행되어 지는 부분입니다.
· 즉, finally 블럭은 try 블럭이 정상적으로 실행되든, 에러가 발생하여 except 블럭이 실행되든 상관없이 항상 마지막에 실행됩니다.
· 보통 finally절은 사용한 자원의 리소스를 정리(close)하기위해 사용되어집니다.
아래와 같은 구조인 경우, finally는 생략 불가
try: <예외 발생 가능성이 있는 문장> finally: <예외와 관계없이, 항상 수행되어야 할 문장> |
'Development > Python' 카테고리의 다른 글
행/열 합계 - sum() (0) | 2019.11.13 |
---|---|
교환 법칙과 분배 법칙 (0) | 2019.11.12 |
지도 API 사용 방법 (0) | 2019.11.10 |
실제 행렬을 사용한 곱셈의 예 (0) | 2019.11.09 |
멤버 메서드 종류 (0) | 2019.11.09 |