Python

1-7-2. 오류 예외처리 및 구분하기

예외 객체

‘종류’
우선 어떤 예외가 있는지 몰라 당황스럽다면
Exception : 모든 예외를 사용해 봅니다.

# try exception 사용하기
try:
    #숫자로 변환
    number_input = int(input("숫자 입력"))
    # 출력하기
    print("원 지름", number_input)
    print("원 둘레", 2 * 3.14 * number_input)
    print("원 넓이", 3.14 * number_input ** 2)
except Exception as exception:
    # 객체를 출력해보기
    print("type(exception):", type(exception))
    print("exception", exception)
예외

큰 규모의 서비스를 구축한다면
내부에서 다양한 오류가 발생하게 됩니다.

오류가 발생할 때 정보들을 메일 등으로 보내도록하여
수집하면 이후 프로그램을 개선하는데 큰 도움이 됩니다.


오류 구분하기

여러가지 오류가 발생할 수 있는 경우

형식

try:
	예외가 발생할 가능성이 있는 문구
except 예외 종류 1:
    예외1이 발생했을 때 실행구문
except 예외 종류 2:
    예외2이 발생했을 때 실행구문

오류를 구분할 때 각각의 except 구문 뒤 객체를 붙여 활용이 가능합니다.

list_number = [11, 22, 33, 44, 55]
# try except 구문으로 처리하기
try:
    # 숫자 입력받기
    number_input = int(input("리스트에 숫자 확인하기"))
    # 리스트 요소 출력
    print("{}번째 요소: {}".format(number_input, list_number[number_input]))
except ValueError as exception:
    # ValueError 발생시
    print("정수를 입력해 주세요.")
    print("exception:", exception)
except IndexError as exception:
    print("리스트의 인덱스를 벗어났습니다.")
    print("exception:", exception)

모든 오류 처리 하기 Exception as exception

list_number = [11, 22, 33, 44, 55]
# try except 구문으로 처리하기

try:
    # 숫자 입력받기
    number_input = int(input("리스트에 숫자 확인하기"))
    
    # 리스트 요소 출력
    print("{}번째 요소: {}".format(number_input, list_number[number_input]))
except ValueError as exception:
    # ValueError 발생시
    print("정수를 입력해 주세요.")
    print("exception:", exception)
except IndexError as exception:
    print("리스트의 인덱스를 벗어났습니다.")
    print("exception:", exception)
except Exception as exception:
    print("입력, 리스트 외의 오류가 발생하였습니다.")
    print(type(exception), exception)

raise 구문

아직 구현되지 않은 부분으로
일부러 오류를 발생시켜 프로그램을
다운 시켜서 잊어버리지 않도록 하는 것
raise 키워드가 바로 오류를 강제로 발생시키는 기능

형태

raise로 오류 발생시키기

# 입력을 받기
number = int(input("정수 입력:"))
# 조건문 사용
if number > 0:
    # 양수일 때
    raise NotImplementedError
else:
    # 음수일 때
    raise NotImplementedError


프로그래밍에서 오류 처리는
단순한 코드의 한 부분이 아니라,
견고하고 안정적인 소프트웨어를 구축하는데 있어 필수적인 요소입니다.
오류 처리를 통해 우리는 예상치 못한 상황과 오류에 대비하며,
이는 사용자 경험을 향상시키고, 애플리케이션의 신뢰성을 높이는 데 크게 기여합니다.
마치 운전 중에 안전벨트를 착용하는 것처럼,
오류 처리는 프로그래밍의 안전벨트와 같습니다.
안전하고 신뢰할 수 있는 소프트웨어를 위해서는
오류 처리가 필수적인 부분입니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다