[Python] try-except로 예외 처리하기

orangesnail·2025년 3월 3일

Python

목록 보기
7/21

출처: 혼자 공부하는 파이썬


🚨 오류와 예외

프로그래밍을 하다가 나는 오류에는 크게 두 가지 종류가 있다.

  1. 프로그램 실행 에 발생하는 오류 = syntax error(구문 오류)
  2. 프로그램 실행 에 발생하는 오류 = runtime error(런타임 오류)/exception(예외)

syntax error는 괄호 개수, 들여쓰기 이슈 등으로 발생하는 오류다. 프로그램을 실행하려고 하면 아예 실행이 안되고 SyntaxError: 어쩌고 라고 뜬다. 오류를 해결하지 않으면 프로그램 자체가 실행되지 않는 것이다.

exception은 실행 중에 발생하는 오류이기 때문에, 일단 프로그램이 돌아가긴 한다. 돌아가다가 특정 부분에 도달하면 에러가 뜨는 것이다.


🛠️ try-except 구문을 활용한 예외 처리

예외가 발생할 상황을 모두 예측할 수 없기 때문에 예외 처리에 if~else와 같은 조건문을 활용하는건 현실적으로 불가능하다. 그래서 예외 처리를 위해 만들어진 구문인 try-except를 사용한다!

기본 구조

try:
	예외 발생할 가능성이 있는 코드
except:
	예외 발생했을 때 실행할 코드

try-except 구문을 통해 어떤 상황에 예외가 발생하는지 하나하나 기억하고 있지 않아도, 프로그램이 강제로 종료되는 현상을 막을 수 있다!

try-except 구문과 pass

try:
	예외 발생할 가능성이 있는 코드
except:
	pass

어떤 부분에서 예외가 발생하는지 정확히 모를 때 주로 사용한다.
('일단 예외가 나는걸 막긴 하자' 이런 느낌?)

try except else

try:
	예외 발생할 가능성이 있는 코드
except:
	예외 발생했을 때 실행할 코드
else:
	예외가 발생하지 않았을 때 실행할 코드

이 구문을 사용할 때는 보통 예외가 발생할 가능성이 있는 코드만 try에 넣고 나머지는 다 else로 뺀다.

finally

try:
	예외 발생할 가능성이 있는 코드
except:
	예외 발생했을 때 실행할 코드
else:
	예외가 발생하지 않았을 때 실행할 코드
finally:
	무조건 실행할 코드

finally에는 예외가 발생하든 발생하지 않든 무조건 실행할 코드를 적어준다.

profile
초보입니다. 피드백 환영합니다 😗

0개의 댓글