🔥 try-except 블록
343자
4분
파이썬에서 예외 처리는 프로그램의 안정성과 신뢰성을 크게 향상시키는 핵심 요소입니다. 이 장에서는 try-except 블록을 사용하여 다양한 예외 상황을 처리하는 방법에 대해 자세히 알아봅니다.
try-except 블록의 기본 구조
try-except 블록은 파이썬에서 예외를 처리하는 기본적인 방법입니다. 이 구조를 사용하면 예외가 발생했을 때 프로그램이 중단되지 않고, 지정된 예외 처리 코드를 실행할 수 있습니다.
try: # 예외가 발생할 수 있는 코드 print(10 / 0) except ZeroDivisionError: # 예외 처리 코드 print("0으로 나눌 수 없습니다.")
python
0으로 나누기 시도 시 ZeroDivisionError
예외가 처리됩니다.
다중 Except 블록
한 try 블록에서 여러 예외를 처리할 수 있습니다. 이를 통해 다양한 예외 상황에 대응할 수 있습니다.
try: # 다양한 예외가 발생할 수 있는 코드 pass except ZeroDivisionError: print("0으로 나눌 수 없습니다.") except ValueError: print("잘못된 값을 입력했습니다.")
python
각 예외 유형에 따라 다른 처리를 할 수 있습니다.
일반 예외 처리
특정 예외 유형을 지정하지 않고, 모든 예외를 잡아내려면 Exception
클래스를 사용할 수 있습니다.
try: # 예외 발생 가능 코드 pass except Exception as e: print(f"예외 발생: {e}")
python
모든 예외는 Exception
클래스를 상속받기 때문에, 이를 통해 모든 예외를 잡아낼 수 있습니다.
예외의 추가 정보 활용
예외 객체에서는 예외와 관련된 추가 정보를 얻을 수 있습니다. 이 정보를 활용하면 더 상세한 예외 처리가 가능합니다.
try: # 예외 발생 가능 코드 pass except Exception as e: print(f"예외 유형: {type(e)}, 메시지: {e}")
python
예외의 유형과 메시지를 출력하여 더 많은 정보를 얻을 수 있습니다.
else 블록 사용
else
블록은 예외가 발생하지 않았을 때 실행되는 코드를 작성하는 데 사용됩니다.
try: # 예외 발생 가능 코드 result = 10 / 5 except ZeroDivisionError: print("0으로 나눌 수 없습니다.") else: print("결과:", result)
python
예외가 발생하지 않으면 else
블록의 코드가 실행됩니다.
finally 블록
finally
블록은 예외 발생 여부와 상관없이 항상 실행되는 코드를 작성하는 데 사용됩니다. 주로 자원을 정리하는 코드에 사용됩니다.
try: # 예외 발생 가능 코드 pass finally: # 항상 실행되는 코드 print("항상 실행됩니다.")
python
예외 발생 여부에 상관없이 finally
블록은 항상 실행됩니다.
연습문제
FileNotFoundError
예외를 처리하는 코드를 작성하고, 파일을 찾을 수 없을 때 적절한 오류 메시지를 출력하세요.- 여러 예외를 하나의
except
블록에서 처리하는 예제를 작성하세요.