본문으로 바로가기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

4. 예외처리


1) 예외처리 기초


- 프로그램 실행 시 발생하는 오류 상황을 예외처리를 해줘야함.

- 예외처리의 기본 구조는 다음과 같다.

try:
    예외가 발생할 수 있는 구문
except 예외 종류:
    예외처리 수행 구문
else:
    예외가 발생하지 않았을 때 수행할 구문
finally:
    예외 발생과 관계없이 무조건 수행할 구문

☞ 1줄 : 처리시작. 예약어 try로 예외처리를 시작함.

☞ 5줄 else : 예외가 발생하지 않았을 때 수행하는 구문으로 생략가능하다.

☞ 7줄 finally : 예외 발생과 관계없이 무조건 수행됨. finally는 생략할 수 있다.


2) 예외처리


- 0으로 나누는 프로그램을 예외처리를 통해 정상작동하도록 함.

try:
    a = 30 / 0
except:
    print "[EXEPTION 1] cannot be divided by zero\n"

try:
    a = 30 / 0
except ZeroDivisionError:
    print "[EXEPTION 2] cannot be divided by zero\n"

try:
    a = 30
    b = "A"
    c = a / b
except (TypeError, ZeroDivisionError):
    print "[EXEPTION 3] type error!\n"
else:
    print "Well done!!\n"
finally:
    print "End of Program" 

☞ 실행 결과

======================= RESTART: C:/Python27/prac/4.py =======================

[EXEPTION 1] cannot be divided by zero


[EXEPTION 2] cannot be divided by zero


[EXEPTION 3] type error!


End of Program


☞ 3줄 : 예외 종류 명시하지않고 예외처리.

☞ 8줄 : 예외 종류를 명시하고 예외처리.

☞ 15줄 : 복수 예외 명시.

☞ 17줄 else : 예외 미 발생시 정상 처리 메시지 출력.

☞ 19줄 finally : 예외 발생 여부와 관계없이 메시지 출력.