본문 바로가기
08.개발&프로그래밍/1.파이썬

9. 예외 처리와 디버깅 기본

by JWJ Family 2025. 7. 11.
728x90

코드를 작성하다 보면 예상치 못한 오류가 발생할 수 있습니다. 파이썬의 예외 처리 문법과 디버깅 기법을 익히면 보다 안정적이고 효율적인 코딩이 가능합니다.

1. 예외(Exception)란?

예외는 프로그램 실행 도중 발생하는 오류 상황입니다. 예외를 처리하지 않으면 프로그램이 강제로 종료됩니다. 이를 방지하기 위해 try - except 구문을 사용합니다.

2. try - except 기본 문법


try:
    실행할 코드
except 예외종류:
    오류 발생 시 실행할 코드
  

예제를 통해 살펴보겠습니다:


try:
    num = int(input("숫자를 입력하세요: "))
    result = 10 / num
    print("결과:", result)
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")
except ValueError:
    print("숫자가 아닙니다.")
except Exception as e:
    print("예기치 않은 오류 발생:", e)
  

3. 실행 예시


숫자를 입력하세요: 0
0으로 나눌 수 없습니다.
  

try 블록에서 오류가 발생하면, 해당하는 except 문이 실행되고 프로그램은 종료되지 않습니다.

4. 디버깅이란?

디버깅(Debugging)은 코드의 문제를 찾고 해결하는 과정입니다. 초보자에게 가장 쉬운 디버깅 방법은 print 디버깅입니다.


def divide(a, b):
    print("a:", a, "b:", b)  # 중간값 출력
    return a / b

try:
    result = divide(10, 0)
    print("결과:", result)
except Exception as e:
    print("오류 발생:", e)
  

또한, traceback 모듈을 사용하면 어디서 오류가 났는지 더 자세히 확인할 수 있습니다.


import traceback

try:
    1 / 0
except Exception:
    traceback.print_exc()
  

5. IDE 디버깅 팁

  • VS Code, PyCharm 등 IDE의 중단점(Breakpoint)을 활용하면 코드 흐름을 단계별로 추적할 수 있습니다.
  • 실행 도중 변수 값을 직접 확인하고 조건부 실행도 가능합니다.
  • Python 내장 pdb 모듈로도 디버깅이 가능합니다.

6. 정리 및 다음 단계

예외 처리는 프로그램의 예기치 않은 종료를 막고, 디버깅은 문제 해결의 핵심입니다. try-except 구문과 print, traceback 활용법을 익혔다면 오류에 강한 코드를 만들 수 있습니다.

다음 글에서는 모듈과 패키지 사용법을 배워 코드의 재사용성과 구조화를 높이는 방법을 익혀보겠습니다.

 

반응형