파이썬 예외 처리
예외 처리의 필요성
프로그램을 수행하다가 예외가 발생하면 강제 종료가 되어 버린다.
예외가 발생해 프로그램 수행이 종료 되더라도 리소스 반환과 사용자가 알 수 있는 메시지를 출력하여
우화하게 종료 될 수 있도록 예외처리를 해야 한다.
다음 예제는 강제 종료가 되는 예제이다.
#!/usr/bin/python # -*- coding: utf-8 -*- retval = 10/0 |
아래와 같이 프로그램이 강제 종료가 된다.
Traceback (most recent call last): File "C:/6.��α� �����/python/try.py/try.py", line 4, in <module> retval = 10/0 ZeroDivisionError: integer division or modulo by zero |
예외 처리 try ~ except
예외 처리를 하는 방법은 아래와 같다.
try: 다음에 예외가 발생 할지 모르는 실행문을 작성합니다.
예외가 발생하면 발생한 지점 이후는 실행하지 않고
바로 except 로 이동을 합니다.
except 다음에 프로그램을 실행 합니다.
try: [예외가 발생하는 실행 문] except 발생오류 as 오류 메시지 변수 : [보통 오류 메시지 발생된 것을 출력] |
위의 예제를 예외처리 해보겠습니다.
#!/usr/bin/python # -*- coding: utf-8 -*- try: retval = 10/0 except ZeroDivisionError as e : print(e) |
아래와 같이 예외가 발생하여 메시지만 출력이 되며 강제 종료 되지 않는다.
integer division or modulo by zero |
예외 처리 try ~ except ~ else
try 문에 수행 후 예외가 발생하지 않을 경우는 else를 사용해 실행문을 작성
try: [예외가 발생하는 실행 문] except 발생오류 as 오류 메시지 변수 : [보통 오류 메시지 발생된 것을 출력] else: [예외 발생 하지 않을 경우 실행 문] |
else를 사용하는 예제를 보겠습니다.
#!/usr/bin/python # -*- coding: utf-8 -*- try: retval = 10/2 except ZeroDivisionError as e : print(e) else : print("retval : %d"%retval) |
예외가 발생하지 않아 retval 값이 출력 된다.
retval : 5 |
이상으로 파이썬에서 예외처리 방법에 대해 설명 드렸습니다.
도움이 되셨나요?
'프로그램 > Python' 카테고리의 다른 글
[Python] Python cmd 결과 값 받는 방법 (0) | 2016.12.12 |
---|---|
[Python] 예외처리 try, finally, except pass (0) | 2016.11.28 |
[Python] 모듈 #2 (0) | 2016.11.13 |
[Python] 모듈 #1 (0) | 2016.11.12 |
[Python]클래스(3) (0) | 2016.11.02 |