728x90
코딩을 하다보면 수 많은 에러가 발생한다. 어떤 에러가 발생했는지 쉽게 파악이 가능해야 디버깅 하기도 편하다. 예외처리를 통하여 에러를 잘 핸들링한다면 보다 유연한 프로그램 개발이 가능할 것이다. 에러에 대한 예외처리의 기본형태는 다음과 같다.
try:
1 / 0
except ZeroDivisionError as e:
print(e)
except IndexError as e:
print(e)
else:
print('오류없음')
finally:
print('예외처리')
결과 값
division by zero
예외처리
try구문의 실행코드가 에러가 발생하면 except구문에서 처리한다. 위의 코드에서는 1 / 0을 하여 0으로 나눈 에러(ZeroDivisionError)가 발생했다. 이 에러가 발생하면 에러메시지를 출력하도록 했다. else구문은 오류가 없을 때 실행되고 finally구문은 마지막에 무조건 실행되는 코드이다.
에러를 뜻하는 코드는 다음과 같이 에러를 발생시키면 알 수 있다.
1 / 0
결과 값
Traceback (most recent call last):
File "H:/Bitmex/test.py", line 1, in <module>
1 / 0
ZeroDivisionError: division by zero
그리고 Exception클래스 상속을 통해 커스텀 에러를 만들 수 있다.
class CustomError(Exception):
def __str__(self):
return "Custom Error"
try:
raise CustomError
except CustomError as e:
print(e)
결과 값
Custom Error
728x90
'Programming > Python' 카테고리의 다른 글
[01. Python] 014. 정규 표현식(Regular Expressions) (0) | 2020.01.03 |
---|---|
[01. Python] 012. 클래스 (0) | 2020.01.02 |
[01. Python] 011. 함수 (0) | 2019.12.30 |
[01. Python] 010. 제어문 – while (0) | 2019.12.29 |
[01. Python] 009. 제어문 – for (0) | 2019.12.29 |