본문 바로가기

기술(技術)

파이썬, print로 코드 결괏값을 깔금하게 확인하기

python이라는 프로그래밍어어를 사용하다보면 코드를 진행하는 과정에서 출력값을 확인해야하는 경우가 종종 발생하곤 한다. 물론, 코딩실력이 너무나 뛰어나서 특별한 결괏값을 확인하지 않아도 전체 진행에 무리가 없다면 굳이 코드 중간중간 출력값을 확인할 필요는 없을 것이다. 하지만, 필자와 같은 초보자들에게는 단순하게 코드들로만 이루어진 몇몇 명령어들이 정상적으로 작동하는지 확인해야만 하는 경우가 많을 수 있다. 굳이 몇 줄의 코드라고 명시하지 않겠지만, 원하는 프로르램을 만들기 위해 다양한 함수 혹은 클래스를 활용해야한다면 중간중간 헤깔리는 부분들이 발생하는 경험을 하곤 했다. 모든 과정을 하나의 절차로 진행되는 경우는 이런 문제점이 조금은 작을 수도 있다. 일정한 과정으로 진행되는 경우 전체 소스코드를 테스트하여 중간의 오류를 확인할 수 있는데, 왠만한 idle의 경우는 오류가 발생되는 코드를 시작전 알려주거나, 코드가 진행하면서 그 위치를 알려주곤 한다. 만약 구분구분으로 확인하고 싶다면 '주피터 노트북'을 활용하는 것도 좋은 방법일 수 있다. 주피터 노트북의 경우 스크립트별로 코드를 실행해 볼 수 있기에 필자와 같은 초보자들에게는 코딩에 접근하기 한결 수월한 프로그램이지 않을까 생각해 본다. 진행되는 코드의 단순한 오류 위치를 파악했다고 해서 그 문제점을 바로 수정, 보완할 수 있다는 것도 아니다. 어디서, 어떻게, 무엇때문에 전체 코드에서 오류가 발생했는지를 파악하는 것이 문제점을 해결하는데 더 중요한 부분이 될 수 있기 때문이다. 이 경우는 코드 중간에 임시로 'print'명령문을 활용해보면 좋다. 물론, 개인의 경험이기에 사람마다 그 차이를 보일 수도 있는 일이다. 본 글은 필자의 경험을 기준으로 삼고 있기 때문에 다른 의견이 있으신분들은 댓글을 이용해주시면 감사하겠다. print의 경우 일반적으로 프로그램이 구동되어 원하는 결괏값을 출력하는 용도로 사용하게 된다. 예를 들어 '계산기'와 같은 프로그램을 생각해 보도록 하자. 계산기에서 가장 중요한 부분은 '숫자', '연산기호', '계산 결괏값'으로 대표될 수 있을 것이다. 내가 어떤 계산을 진행했는지 확인하고, 그 결괏값을 사용자에게 출력해 보여줘야만 '계산기'라는 프로그램의 올바른 활용이 될 수 있다는 것을 의미한다. 여기서 프로그램이 구동되는 과정에 사용자에게 보여주는 것이 'print'와 같은 명령문으로 이루어진다. 파이썬에서 print()함수는 두가지의 방법으로 활용된다. 변수에 지정된 값을 출력하는 것과 임의로 고정된 문자를 출력하는 것이다. 물론, 두가지를 섞을 수도 있는데 그 부분은 응용이라는 단계로 넣어두기로 하겠다. 먼저 변수를 활용하는 방법으로 'print(변수)'로 명령문을 구성하면 된다. 만약 변수로 지정한 문자에 값이 정의되어 있지 않다면, 코드는 오류 메시지를 출력할 것이다. 다음으로는 'print('출력할 내용')'으로 활용할 수 있다. 프린트함수의 소괄호 내부에 '', ""로 영역을 표시한 문구가 고정으로 출력되는 방법이다. 여기서 한걸음 더 나아가 두가지의 변수 혹은 앞서 언급한 두가지의 내용을 같이 활용하기 위해서는 ','로 구분을 지어주면 된다. print(변수 , '출력할 문구') 와 같이 활용할 수 있다. 이 외에도 '%s', '%d'와 같은 명령어를 활용하는 방법도 존재하는데, 이 부분은 다음에 보다 자세히 다루고자 한다. 오늘의 핵심은 코드 중간에 지정한 함수가 적당히 동작을 하는지, 예외 처리로 작성한 코드가 올바르게 작동하는지에 대해 print를 활용하는 것은 충분히 큰 도움을 받을 수 있는 작은 팁이라는 것이다. 만약, 프린트로 출력하는 문장이 너무 길어 줄바꿈을 원한다면 '\n'을 추가하면 된다. 앞에서 언급한 기호 뒤에 존재하는 내용의 경우 줄바꿈되어(enter) 표시되게 된다. 작성하고 있는 코딩에서 필요한 부분에 적당히 '주석'과 섞어 사용하면 코드의 오류를 찾는데 보다 편리하게 활용할 수 있을 것이다.