프로그램을 실행하고 출력을 보고 싶을 때는 Run Code / Run를 사용하세요. 코드의 특정 줄에서 일시 정지하고 변수를 검사하며 결과가 잘못된 이유를 파악하고 싶을 때는 Debug를 사용하세요. 디버깅은 코드가 오류 없이 실행되지만 예상치 못한 결과를 생성할 때 특히 유용합니다.

이 가이드는 CodeUtility Python 실행기와 간단한 계산 예제를 사용합니다. 중단점 및 단계별 실행 워크플로우는 Debug가 가능한 다른 실행기에도 적용됩니다. 런타임 지원 및 제어는 다를 수 있으므로 이 Python 워크스루를 위해 지원되는 서버 런타임을 사용하세요. 스크린샷은 영어 인터페이스를 보여줍니다.

1. 논리 버그가 있는 작은 프로그램 시도하기

Python 실행기를 열고 버전 메뉴에서 Python 3.11을 선택한 후 다음 네 줄을 입력하세요. 가격 12에 수량 3을 곱하면 36이 나와야 합니다. 이 프로그램은 의도적으로 덧셈을 사용하므로 15를 생성합니다.

price = 12
quantity = 3
total = price + quantity
print(total)

2. 디버그 시작 전에 중단점 설정하기

3번 줄 옆의 왼쪽 여백을 클릭하세요. total = price + quantity가 있는 줄입니다. 빨간 중단점 마커가 나타납니다. 중단점은 디버거에게 어디에서 일시 정지할지를 알려줍니다. 마커를 다시 클릭하면 제거됩니다. 중단점은 빈 줄이나 주석이 아닌 실행 가능한 문장에 설정하세요.

3번 줄 옆의 빨간 중단점이 실행이 일시 정지해야 할 위치를 표시합니다.
3번 줄 옆의 빨간 중단점이 실행이 일시 정지해야 할 위치를 표시합니다.

3. 디버그 시작하고 값 검사하기

편집기 도구 모음에서 Debug를 선택하세요; 아이콘 위에 마우스를 올리면 레이블이 표시됩니다. 디버거 창이 Paused at line 3를 보고할 때까지 기다리세요. 일시 정지 상태는 프로그램이 다음 디버깅 작업을 기다리고 있음을 의미합니다.

VARIABLES 아래를 확인하세요: price는 12이고 quantity는 3입니다. 3번 줄은 아직 실행되지 않았으므로 total은 나열되지 않습니다. 강조된 줄은 다음에 실행될 문장입니다. CALL STACK는 현재 실행이 일시 정지된 위치를 보여줍니다.

3번 줄 앞에서 일시 정지: price는 12이고 quantity는 3입니다; total은 아직 할당되지 않았습니다.
3번 줄 앞에서 일시 정지: price는 12이고 quantity는 3입니다; total은 아직 할당되지 않았습니다.

4. 계산 단계별로 실행하기

Step Over를 한 번 클릭하세요. 실행이 4번 줄로 이동하고 total은 이제 15의 값을 나타냅니다. 이는 잘못된 답이 3번 줄의 두 값을 더한 결과임을 보여줍니다.

Step Over 후, 디버거는 4번 줄에서 일시 정지하고 total = 15를 보여줍니다.
Step Over 후, 디버거는 4번 줄에서 일시 정지하고 total = 15를 보여줍니다.

Continue는 다른 중단점에 도달하거나 프로그램이 끝날 때까지 실행을 재개합니다. Step Over는 호출된 함수로 들어가지 않고 현재 문장을 실행합니다. Step Into는 지원되는 경우 호출된 함수로 들어갑니다. Step Out는 현재 함수가 반환될 때까지 실행합니다. Stop는 정사각형 아이콘으로 표시되며 디버깅 세션을 종료합니다.

5. 코드를 수정하고 다시 실행하기

예제를 마치려면 Continue를 선택하거나 세션을 종료하려면 Stop을 선택하세요. 3번 줄의 더하기 기호를 곱하기 기호로 바꾼 후 Run Code / Run를 선택하여 출력을 확인하세요. 36이 표시되어야 합니다. 또한 디버그를 다시 시작하고 Step Over를 사용하여 수정된 값을 확인할 수 있습니다.

price = 12
quantity = 3
total = price * quantity
print(total)

디버깅이 예상한 위치에서 일시 정지하지 않는 경우

디버그를 시작하기 전에 빨간 중단점이 설정되어 있는지, 디버그를 선택했는지, 프로그램이 실제로 해당 줄에 도달하는지 확인하세요. 실행 가능한 줄을 선택하고 선택한 런타임이 디버깅을 지원하는지 확인하세요. 구문 오류는 실행이 중단점에 도달하는 것을 방지할 수 있습니다. 프로그램이 입력을 요청하는 경우, 실행을 계속할 수 있도록 터미널에서 입력을 제공하세요.

다음 디버깅 세션을 위해 의심스러운 계산 바로 앞에 중단점을 설정하고 입력을 검사한 후 첫 번째 예상치 못한 값을 찾을 때까지 단계별로 진행하세요. 최종 출력만 필요하다면 Run Code를 선택하세요.