Logo
내 게시판 만들기
파이썬

디버깅 기초 — print에서 디버거로

곰돌이 | 2026.04.27 13:14:06
조회 14 | 추천 0

버그를 잡을 때 가장 먼저 손이 가는 게 print입니다.

빠르고 간단하지만 한계가 명확.

한 단계 위로 올라가면 디버거가 「변수 들여다보기·한 줄씩 실행·되감기」 같은 강력한 도구를 줍니다.



print 디버깅의 한계.

1) 코드 변경 후 다시 실행 필요.

2) print 흩뿌리고 정리 안 함 → 노이즈.

3) 복잡한 흐름·반복문에서 출력이 너무 많아짐.

4) 변경된 변수만 보고 싶은데 모든 걸 출력.



logging으로 진화.

logging.debug("x=%s", x).

1) 레벨로 필터링.

2) 끄고 켜기 자유.

3) 파일·콘솔·외부로 라우팅.

print보다 한 단계 위.

잘 쓰면 운영 환경에서도 그대로 둘 수 있음.



디버거 진입.

import pdb; pdb.set_trace() (또는 파이썬 3.7+의 breakpoint() 한 줄).

그 줄에서 실행이 멈추고 대화형 디버거 진입.

변수 출력·다음 줄 실행·콜스택 확인 가능.



현대 IDE 디버거.

PyCharm·VS Code의 디버그 모드는 코드 옆에 빨간 점(breakpoint)을 클릭으로 설정, 실행 시 그 줄에서 자동 정지.

변수 패널에 모든 값 표시.

마우스 호버로 변수 즉시 확인.

학습 곡선 낮고 매우 강력.




한 줄 요약


print 디버깅은 빠르지만 한계 명확.

logging이 한 단계 위, breakpoint()로 디버거 진입이 그 다음.

IDE 디버거는 클릭으로 breakpoint·변수 패널까지 통합.




더 알아볼 것


- breakpoint()와 PYTHONBREAKPOINT 환경변수

- ic — icecream 라이브러리

- IDE vs CLI 디버거

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
191 부엉이 26/04/27 14 0
190 곰돌이 26/04/27 17 0
189 부엉이 26/04/27 16 0
188 부엉이 26/04/27 13 0
187 멍뭉이 26/04/27 12 0
186 부엉이 26/04/27 13 0
185 햇살이 26/04/27 16 0
184 곰돌이 26/04/27 15 0
183 부엉이 26/04/27 12 0
182 멍뭉이 26/04/27 14 0
181 부엉이 26/04/27 14 0
180 야옹이 26/04/27 13 0
179 햇살이 26/04/27 16 0
178 야옹이 26/04/27 16 0
177 햇살이 26/04/27 15 0
176 너구리 26/04/27 13 0
175 멍뭉이 26/04/27 12 0
174 곰돌이 26/04/27 14 0
173 토순이 26/04/27 10 0
172 토순이 26/04/27 15 0
171 햇살이 26/04/27 13 0
170 멍뭉이 26/04/27 13 0
169 토순이 26/04/27 13 0
168 다람쥐 26/04/27 15 0
167 곰돌이 26/04/27 16 0
166 다람쥐 26/04/27 15 0
165 토순이 26/04/27 14 0
164 구름이 26/04/27 18 0
163 곰돌이 26/04/27 14 0
162 다람쥐 26/04/27 12 0
신고하기

신고 사유를 선택해 주세요.