[function] breakpoint()

Jonathan·2021년 8월 30일

Python

목록 보기
3/3

Intro

  • import pdb; pdb.set_trace()를 대신해서 사용할 수 있는 built-in 함수
  • python 3.7에 도입됨.

Usage

def example():
    arr = [num for num in range(10)]
    breakpoint()
    print("after breakpoint")
    return arr
    
res = example()
  • 인터프리터는 코드를 실행하다가 위와 같이 breakpoint()를 만나면 debug console이 실행됨. 이 console에서는 런타임의 객체값을 확인하거나 디버거 명령어를 통해 프로그램을 디버깅 할 수 있음.
    • 주요 디버거 명령어 // 여기서 괄호 안에 있는 부분은 입력해도 되고 안 해도 되는 부분임.
      • s(tep): 현재 줄을 실행하고, 멈출 수 있는 가장 첫 번째 줄(호출되는 함수 또는 현재 함수의 다음 줄) 에서 정지
      • r(eturn): 현재 함수가 반환될 때까지 계속 실행
      • c(ontinue): 다음 breakpoint까지 코드 진행
      • pp: 표현식의 값을 pprint 모듈을 활용하여 보기 좋은 형태로 출력
        • ex: pp arr # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
      • q(uit), exit: 디버거 종료
      • h(elp): 입력 가능 명령어 리스트를 출력

reference

profile
백엔드 개발자. 두려움을 두려워 하지 말자.

0개의 댓글