에러발생 시 예외처리가 없는 경우 프로그램이 죽고만다.

아래 예외처리를 통해, 상정된 예외를 처리하고 프로그램을 유지시킬 수 있다.

 

* try : 예외처리가 발생할 영역

* except [ERR_TYPE] : 에러 타입에 맞는 에러 발생시 호출

* else : 에러가 발생하지 않을 경우 호출

* finally : 에러 발생여부와 상관없이 호출

bread = 10
try:
	people = int(input("사람 수 < "))
	print("1인당 빵 개수 :", bread / people)
	print("맛있게 드세요~")
except ValueError as msg:
	print("ERROR : 잘못된 입력입니다. msg[", msg, "]")
except ZeroDivisionError as msg:
	print("ERROR : 0으로는 나눌 수 없습니다. msg[", msg, "]")
else:
	print("정상적으로 처리되었습니다.")
finally:
	print("프로그램을 종료합니다.");
    
    
# '일' 입력
사람 수 < 칠
ERROR : 잘못된 입력입니다. msg[ invalid literal for int() with base 10: '칠' ]
프로그램을 종료합니다.

# 0 입력
사람 수 < 0
ERROR : 0으로는 나눌 수 없습니다. msg[ division by zero ]
프로그램을 종료합니다.

# 1 입력
사람 수 < 1
1인당 빵 개수 : 10.0
맛있게 드세요~
정상적으로 처리되었습니다.
프로그램을 종료합니다.

 

모든 예외 받기 + 무시하기

bread = 10
try:
	people = int(input("사람 수 < "))
	print("1인당 빵 개수 :", bread / people)
	print("맛있게 드세요~")
except : # 모든 에러(예외상황)에 대응한다.
	pass # 아무 동작 없이 지나감
else:
	print("정상적으로 처리되었습니다.")
finally:
	print("프로그램을 종료합니다.");
    
    
# '일' 입력
사람 수 < 칠
프로그램을 종료합니다.

# 1 입력
사람 수 < 1
1인당 빵 개수 : 10.0
맛있게 드세요~
정상적으로 처리되었습니다.
프로그램을 종료합니다.

 

'Python > 기초이론' 카테고리의 다른 글

Python - 클래스  (0) 2023.02.13
Python - 딕셔너리  (0) 2023.02.12
Python - 모듈  (0) 2023.02.11
Python - 함수  (0) 2023.02.11
Python_참고 - tuple, list 함수  (0) 2022.12.25

+ Recent posts