예외 처리는 프로그램에서 발생한 오류를 잡아내고 적절한 조치를 취하는 과정을 의미한다. Python은 try-except 블록을 제공하여 이러한 예외를 잡아내고 효과적으로 처리할 수 있도록 한다.
try:
# 예외가 발생할 수 있는 코드
except Exception as e:
# 해당 예외가 발생했을 때 수행할 동작
try 블록에는 예외가 발생할 수 있는 코드가 포함되어 있다. 반면, except 블록은 특정 예외 유형이 발생했을 때 프로그램이 어떻게 응답해야 하는지 알려준다.
간단한 예시를 살펴보겠다.
try:
x = 10 / 0 # 이 부분에서 ZeroDivisionError가 발생합니다
except ZeroDivisionError:
x = 0 # 오류가 발생하면 x에 0을 할당하여 처리합니다
위의 예시에서 0으로 나누려고 하면 일반적으로 ZeroDivisionError
가 발생한다. 그러나 try-except 블록 덕분에 이러한 오류를 잡아내고 대신 x
에 0 값을 할당한다.
try 블록이 여러 종류의 예외를 발생시킬 수 있는 상황에 직면할 수도 있다. 이 경우 Python은 각 예외 유형을 다르게 처리하기 위해 여러 개의 except 블록을 사용할 수 있도록 한다.
try:
# 여러 종류의 예외를 발생시킬 수 있는 코드
except TypeError:
# TypeError 예외를 처리합니다
except ZeroDivisionError:
# ZeroDivisionError 예외를 처리합니다
Python의 예외 처리 메커니즘에는 else 블록도 포함된다. else 블록의 코드는 try 블록에서 예외가 발생하지 않은 경우 실행된다.
try:
# 예외가 발생할 수 있는 코드
except Exception as e:
# 해당 예외가 발생했을 때 수행할 동작
else:
# 예외가 발생하지 않았을 때 수행할 동작
Python은 예외 처리 메커니즘에 finally 블록을 사용할 수도 있다. finally 블록 내의 코드는 try 블록에서 예외가 발생하든 발생하지 않든 항상 실행된다.
try:
# 예외가 발생할 수 있는 코드
except Exception as e:
# 해당 예외가 발생했을 때 수행할 동작
finally:
# 이 코드는 예외 발생 여부에 상관없이 항상 실행된다
Python의 try-except 블록을 마스터하면 예외 처리를 통해 프로그램이 비정상적으로 종료되거나 잘못된 결과를 내지 않도록 에러를 예측하고 대응할 수 있다. 실습하고 탐색하며, 실수를 두려워하지 않는것! 그것이 예외 처리의 핵심이다!
except Exception:
을 사용할 수 있다. 그러나 보통은 복구할 수 있는 예외만 처리하는 것이 권장된다.[Python] 비트 연산자 다양한 예제를 통해 이해하기 |
---|
[Python] 관계 연산자 다양한 예제를 통해 이해하기 |
[Python] 'zsh: command not found: python' 오류 해결하기 |
[Python] 할당 연산자 다양한 예제를 통해 이해하기 |
[Python] 산술 연산자 다양한 예제를 통해 이해하기 |
CloneCoding
한 줄의 코드에서 시작되는 혁신!