Python/포스팅

파이썬 오류 예외 처리 기법

짜집퍼박사(짜박) 2023. 12. 3. 13:42

파이썬에서는 예외 처리를 위한 다양한 기법이 제공됩니다. 여러 기법을 사용하여 코드를 보다 안전하고 견고하게 만들 수 있습니다.

 

1. 기본적인 try, except 블록

try:
    # 예외가 발생할 수 있는 코드
    result = 10 / 0
except ZeroDivisionError:
    # 예외가 발생했을 때 실행되는 코드
    print("Cannot divide by zero!")

 

2. 여러 예외 처리하기

try:
    # 예외가 발생할 수 있는 코드
    result = int("abc")
except ValueError:
    # ValueError 처리 코드
    print("Invalid input. Please enter a valid number.")
except ZeroDivisionError:
    # ZeroDivisionError 처리 코드
    print("Cannot divide by zero.")

 

3. 모든 예외 처리하기

try:
    # 예외가 발생할 수 있는 코드
    result = 10 / 0
except Exception as e:
    # 모든 예외 처리 코드
    print(f"An error occurred: {e}")

 

4. else 블록 활용

try:
    # 예외가 발생할 수 있는 코드
    result = 10 / 2
except ZeroDivisionError:
    # ZeroDivisionError 처리 코드
    print("Cannot divide by zero.")
else:
    # 예외가 발생하지 않았을 때 실행되는 코드
    print("Division successful.")

 

5. finally 블록 활용

try:
    # 예외가 발생할 수 있는 코드
    result = 10 / 0
except ZeroDivisionError:
    # ZeroDivisionError 처리 코드
    print("Cannot divide by zero.")
finally:
    # 예외 발생 여부와 상관없이 항상 실행되는 코드
    print("This block always runs.")

 

6. 예외 발생시키기 (raise)

try:
    # 예외 발생시키기
    raise ValueError("This is a custom error.")
except ValueError as e:
    # 예외 처리 코드
    print(f"Caught an exception: {e}")

 

7. assert 문 활용

x = 10

assert x > 0, "x should be a positive number"

assert 문은 주어진 조건이 False인 경우 AssertionError 예외를 발생시킵니다.

 

8. with 문과 파일 핸들링

try:
    with open("example.txt", "r") as file:
        content = file.read()
except FileNotFoundError:
    print("File not found.")
else:
    print("File content:", content)

with 문을 사용하면 파일 핸들이 자동으로 닫히므로 예외 발생 여부와 관계없이 안전하게 파일을 다룰 수 있습니다.

예외 처리는 코드의 안정성을 높이고 예측할 수 없는 상황에서의 프로그램 동작을 보호하는 데 중요합니다. 다양한 예외 처리 기법을 활용하여 프로그램을 견고하게 만들 수 있습니다.

 

With ChatGPT

'Python > 포스팅' 카테고리의 다른 글

파이썬 오류 발생시키기  (0) 2023.12.03
파이썬 오류 회피  (0) 2023.12.03
파이썬 오류는 언제 발생하는가?  (0) 2023.12.03
파이썬 예외 처리  (0) 2023.12.03
파이썬 relative 패키지  (0) 2023.12.03