[Python] 파이썬
[Python] 예외처리 방식_2
ITsubin
2022. 9. 12. 23:24
강제로 예외 발생
> Python에서는 예외로 인식하지 못하지만, 실제로는 예외인 경우가 존재.
> 사람의 나이를 정수료 입력받는 프로그램이 있다고 가정했을 때,
사람의 나이는 음수가 될 수 없지만, 음수를 입력하여도 오류가 발생하지 않음.
> 이 때, 직접 예외를 만들어 발생시켜야 하며 raise문을 이용.
raise 예외 클래스()
또는
raise 예외 클래스(예외 메세지)
age = int(input())
if age < 0:
raise ValueError
try:
age = int(input())
if age < 0:
raise ValueError
except ValueError as error:
print(error)
except Exception as error:
print(error)
age = int(input())
assert age >= 0, 'age is not greater than equal 0'
try:
age = int(input())
assert age >= 0, 'age is not greater than equal 0'
except ValueError as error:
print(error)
except AssertionError as error:
print(error)
except Exception as error:
print(error)
def input_until_no_error():
try:
return int(input())
except:
return input_until_no_error()
number = input_until_no_error()
print(number)