[파이썬] 중첩 try-except 문 사용

try-except 문은 프로그램에서 예외 처리를 위해 사용되는 강력한 구문입니다. 이러한 구문을 사용하면 예기치 않은 예외 상황이 발생했을 때 프로그램이 오류 없이 계속 실행될 수 있습니다.

중첩 try-except 문은 한 개 이상의 예외를 처리하기 위해 사용됩니다. 이렇게 중첩된 구문을 사용하면 여러 예외 상황에 대한 세부적인 처리를 할 수 있습니다.

다음은 중첩 try-except 구문의 예시입니다:

try:
    # 코드 블록 1
    try:
        # 코드 블록 2
    except ExceptionType2:
        # 예외 처리 2
except ExceptionType1:
    # 예외 처리 1

첫 번째 try 블록 안에서 예외가 발생하면, 해당 예외를 처리하기 위해 두 번째 except 구문으로 이동합니다.

다음은 중첩 try-except 문을 사용한 예시 코드입니다:

try:
    x = int(input("Enter a number: "))
    try:
        result = 10 / x
        print("Result:", result)
    except ZeroDivisionError:
        print("Error: Cannot divide by zero")
except ValueError:
    print("Error: Invalid input")

이 코드에서, 첫 번째 try 문은 사용자로부터 숫자를 입력받습니다.

만약 사용자가 0 이외의 숫자를 입력하면, 두 번째 try 문에서 입력된 숫자로 나누기 연산을 시도합니다. 이 때, ZeroDivisionError 예외가 발생하면 해당 예외를 처리하기 위해 except 구문으로 이동합니다.

하지만, 사용자가 0을 입력하면 첫 번째 try 문에서 ValueError 예외가 발생하고, 그 예외는 바로 처리됩니다.

프로그램의 실행 흐름은 예외 상황에 따라 다르게 처리되는데, 중첩 try-except 문을 사용하면 이런 상황에 대한 구체적인 처리를 효과적으로 수행할 수 있습니다.

중첩 try-except 구문은 코드를 안정적으로 유지하고 예외 상황을 처리하기 위해 권장되는 방법 중 하나입니다. 프로그램을 개발하거나 디버깅할 때 유용하게 사용할 수 있으며, 코드의 중요한 부분에 적용하여 안전성을 향상시킬 수 있습니다.