파이썬의 pprint
0. 파이썬의 pprint란?
pprint 모듈은 임의의 파이썬 데이터 구조를 인터프리터의 입력으로 사용할 수 있는 형태로 '예쁘게 인쇄'할 수 있는 기능을 제공합니다.
글을 작성하는 이유는 특정 데이터 구조의 길이가 pprint의 기준 이상이 되지 않으면 출력이 print() 와 동일하게 됩니다.
이 경우 마치 pprint가 동작하지 않는 것 처럼 보여 왜 동작하지 않나 하여 직접 디버깅을 해보며 기준을 찾아보았고
또한 pprint는 코딩테스트에서 이차원배열이 사용되는경우가 많아 디버깅시 많이 이용하는 모듈이라 이번 기회에 찾아보게 되었습니다.
1. 예시
(예시1)
# 입력
arr1 = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]
#출력
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
이쁘게 출력 안해주는 모습
(예시2)
# 입력
arr2 = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16], [17,18,19,20]]
#출력
[[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
[13, 14, 15, 16],
[17, 18, 19, 20]]
이쁘게 출력 해주는 모습
(예시3)
# 입력
arr3 = [[1,2,3,4,5,6,7,8,9,10],[11,12,13,14,15,16,17,18,19,20]]
# 출력
[[1,2,3,4,5,6,7,8,9,10],[11,12,13,14,15,16,17,18,19,20]]
이쁘게 출력 안해주는 모습
(예시4)
arr4 = [[1,2,3,4,5,6,7,8,9,10],[11,12,13,14,15,16,17,18,19,20],[21,22,23,24,25,26,27,28,29,30]]
[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
[11, 12, 13, 14, 15, 16, 17, 18, 19, 20],
[21, 22, 23, 24, 25, 26, 27, 28, 29, 30]]
이쁘게 출력 해주는 모습
위와 같이 '특정 기준'을 넘어야 이쁘게 출력해줌을 알 수 있습니다.
option으로 해당 기준을 변경할 수 있는 것인지 찾아봤지만 아직찾지못했습니다.
정확한 default 기준이 무엇인지는 찾아봐야 알 것 같습니다.
2. 참고
공식 문서
참고 자료