파이썬 try except 구문 파이썬에서는 프로그래밍을 하다 보면 다양한 에러가 발생할 수 있습니다. 예를 들어, 숫자를 0으로 나누려고 하면 ZeroDivisionError가 발생하고, 문자열을 숫자로 변환하려고 하면 ValueError가 발생합니다. 이러한 에러가 발생하면 프로그램이 중단되고 사용자에게 오류 메시지가 표시됩니다. 이러한 경우, try except 구문을 사용하여 예외를 처리할 수 있습니다. try except 구문은 에러가 발생할 가능성이 있는 코드를 try 블록으로 감싸고, 에러가 발생하면 except 블록을 실행하도록 합니다.
파이썬 try except 구문으로 예외 처리하기
1. try except 구문의 구조
try except 구문은 다음과 같은 구조로 이루어져 있습니다.
python
try:
# 에러가 발생할 가능성이 있는 코드
except [예외]:
# 에러가 발생하면 실행할 코드
예를 들어, 숫자를 0으로 나누려고 하는 코드를 다음과 같이 작성할 수 있습니다.
python
x = int(input("숫자를 입력하세요: "))
y = 10 / x
print(y)
이 코드를 실행하면 다음과 같은 오류 메시지가 표시됩니다.
Traceback (most recent call last):
File "main.py", line 4, in <module>
y = 10 / x
ZeroDivisionError: division by zero
이러한 오류를 try except 구문을 사용하여 다음과 같이 처리할 수 있습니다.
python
try:
x = int(input("숫자를 입력하세요: "))
y = 10 / x
except ZeroDivisionError:
print("숫자를 0으로 나눌 수 없습니다.")
이 코드를 실행하면 다음과 같이 출력됩니다.
숫자를 입력하세요: 0
숫자를 0으로 나눌 수 없습니다.
2. except 블록에서 예외 객체를 사용하기
except 블록에서 발생한 예외 객체를 사용할 수 있습니다. 예를 들어, 다음과 같이 예외 객체의 에러 메시지를 출력할 수 있습니다.
python
try:
x = int(input("숫자를 입력하세요: "))
y = 10 / x
except ZeroDivisionError as e:
print(e)
이 코드를 실행하면 다음과 같이 출력됩니다.
숫자를 입력하세요: 0
division by zero
3. else 블록
try 블록에서 에러가 발생하지 않으면 else 블록이 실행됩니다.
python
try:
x = int(input("숫자를 입력하세요: "))
y = 10 / x
except ZeroDivisionError:
print("숫자를 0으로 나눌 수 없습니다.")
else:
print("예외가 발생하지 않았습니다.")
이 코드를 실행하면 다음과 같이 출력됩니다.
숫자를 입력하세요: 1
예외가 발생하지 않았습니다.
4. finally 블록
try 블록에서 에러가 발생하든 안 하든 finally 블록이 항상 실행됩니다.
python
try:
x = int(input("숫자를 입력하세요: "))
y = 10 / x
except ZeroDivisionError:
print("숫자를 0으로 나눌 수 없습니다.")
finally:
print("finally 블록이 실행되었습니다.")
이 코드를 실행하면 다음과 같이 출력됩니다.
숫자를 입력하세요: 0
숫자를 0으로 나눌 수 없습니다.
finally 블록이 실행되었습니다.
결론
try except 구문은 파이썬에서 에러 처리를 위한 중요한 구문입니다. try except 구문을 사용하여 프로그램의 안정성을 높일 수 있습니다.
댓글