[파이썬] pdb `pp`로 데이터를 예쁘게 출력

Python의 pdb 모듈은 프로그램의 디버깅을 위해 사용되는 강력한 도구입니다. pprint 모듈을 함께 사용하면 보다 예쁘고 가독성이 좋은 방식으로 데이터를 출력할 수 있습니다. 이번 포스트에서는 pdb 모듈과 pprint 모듈을 함께 사용하여 데이터를 예쁘게 출력하는 방법을 알아보겠습니다.

pprint 모듈 사용하기

pprint 모듈은 “pretty-print”의 약자로, 데이터를 좀 더 보기 편한 형태로 출력해주는 모듈입니다. pprint 모듈을 사용하기 위해 먼저 모듈을 임포트해야 합니다:

import pprint

이제 pprint 모듈을 사용하여 데이터를 예쁘게 출력할 수 있습니다. 예를 들어, 다음과 같은 리스트를 출력한다고 가정해보겠습니다:

data = [1, 2, 3, 4, 5, [6, 7, 8]]

일반적인 print 함수를 사용하여 데이터를 출력하면 다음과 같이 보여집니다:

[1, 2, 3, 4, 5, [6, 7, 8]]

하지만 pprint 모듈을 사용하여 데이터를 출력하면 다음과 같이 예쁘게 보여집니다:

[1, 
 2, 
 3, 
 4, 
 5, 
 [6, 
  7, 
  8]]

pdbpprint 같이 사용하기

이제 pdbpp 명령어를 사용하여 디버깅 과정에서 데이터를 예쁘게 출력해보겠습니다. pdb를 사용하여 디버깅 세션을 시작하면, pp 명령어를 사용하여 현재 상태의 데이터를 예쁘게 출력할 수 있습니다.

다음은 예제 코드입니다:

import pdb
import pprint

def calculate_sum(a, b):
    result = a + b
    pdb.set_trace()
    pprint.pp(result)

calculate_sum(3, 4)

위 코드에서 pdb.set_trace()는 디버깅 세션을 시작하는 명령어입니다. 디버깅 세션이 시작되면 pp 명령어를 사용하여 result 변수의 값을 출력할 수 있습니다.

실행 결과는 다음과 같습니다:

> /path/to/script.py(6)calculate_sum()
-> pprint.pp(result)
(Pdb) pp result
7

pp 명령어를 사용하여 변수 result의 값을 예쁘게 출력한 것을 볼 수 있습니다.

결론

pdb 모듈의 pp 명령어를 사용하면 디버깅 과정에서 데이터를 예쁘게 출력할 수 있습니다. pprint 모듈을 함께 사용하면 더 보기 좋고 가독성이 좋은 형태로 데이터를 출력할 수 있습니다. 이를 통해 디버깅 과정에서 데이터를 쉽게 분석하고 이해할 수 있습니다.