def trys(x,y):
try:
x / y
if y == 100:
raise ValueError #강제로 예외 발생
elif y == 99:
raise NameError #except에 명시적으로 정의되지 않은 예외 발생
except ZeroDivisionError: #처리할 예외 타입 지정
print "ZeroDivisionError Occurred"
except TypeError as e: #예외 내용을 e에 저장
print "TypeError Occurred : %s" % e
except (IndentationError,ValueError): #처리할 예외를 다수 지정
print "IndentationError or ValueError Occurred"
except: #기본 예외 처리
print "etc Error Occurred"
else: #예외 미발생시 실행시킬 구문
print "Error not Occurred"
finally: #예외 발생 여부와 상관없이 실행시킬 구문
print "Always print"
trys(5,0)
trys(5,'t')
trys(5,100)
trys(5,99)
trys(5,2)
반응형
'프로그래밍 기초 > Python' 카테고리의 다른 글
[Python] 클래스 (0) | 2016.03.13 |
---|---|
[Python] 코루틴 (0) | 2016.03.13 |
[Python] 생성기 (0) | 2016.03.08 |
[Python] 파일 입출력 (0) | 2016.03.02 |
[Python] 함수 (0) | 2016.03.02 |