- 아나콘다 가상환경 작성방법
- 파이썬에서 thumbnail만들면서 io 에러난 경우 해결방법
- libraw 라이브러리 사용방법
- 아나콘다 업데이트하기
- 우분투에서 python pip 인스톨하기
- 파이썬으로 웹 스크랩하기10/10
- 파이썬으로 웹 스크랩하기9/10
- 파이썬으로 웹 스크랩하기8/10
- 파이썬으로 웹 스크랩하기7/10
- 파이썬으로 웹 스크랩하기6/10
- 파이썬으로 웹 스크랩하기5/10
- 파이썬으로 웹 스크랩하기4/10
- 파이썬으로 웹 스크랩하기3/10
- 파이썬으로 웹 스크랩하기2/10
- 파이썬으로 웹 스크랩하기1/10
- 파이썬으로 파일 다루기 13 / 13
- 파이썬으로 파일 다루기 12 / 13
- 파이썬으로 파일 다루기 11 / 13
- 파이썬으로 파일 다루기 10 / 13
- 파이썬으로 파일 다루기 9 / 13
- 파이썬으로 파일 다루기 8 / 13
- 파이썬으로 파일 다루기 7 / 13
- 파이썬으로 파일 다루기 6 / 13
- 파이썬으로 파일 다루기 5 / 13
- 파이썬으로 파일 다루기 4 / 13
- 파이썬으로 파일 다루기 3 / 13
- 파이썬으로 파일 다루기 2 / 13
- 파이썬으로 파일 다루기 1 / 13
- 파이썬으로 문자열 다루기 2/2
- 파이썬으로 문자열 다루기1/2
- 파이썬에서 사전 데이터 유형 이용하기2
- 파이썬에서 사전 데이터 유형 이용하기
- 파이썬에서 문자열 연결 및 복제하기
- 파이썬에서 수학 연산자 사용하기
- 13. 데이터베이스 13.8 데이터 삭제
- 13. 데이터베이스 13.7 데이터 수정
- 13. 데이터베이스 13.6 데이터 검색
- 13. 데이터베이스 13.5 데이터 조회
- 13. 데이터베이스 13.4 데이터 입력
- 13. 데이터베이스 13.3 데이터베이스 테이블 생성하기
- 13. 데이터베이스 13.2 SQL 맛보기
- 13. 데이터베이스 13.1 데이터베이스 설치
- 12. 디버깅 Curr
- 11.표준 라이브러리 11.2 logging 모듈
- 11. 표준 라이브러리 11.1 sys 모듈
- 10. 예외처리 10.6 with
- 10. 예외처리 10.5. try finally
- 10. 예외처리 10.4 예외 발생시키기
- 10. 예외처리 10.3 예외 처리
- 10. 예외처리 10.2 예외
- 10. 예외처리 10.1 오류
- 9.입력과 출력 9.4 유니코드
- 9.입력과 출력 9.3 Pickle
- 9.입력과 출력 9.2 파일입출력
- 9. 입력과 출력 9.1 입출력
- 8.자료구조 8.7 넘파이(numpy)
- 8.자료구조 8.6 집합(Set)
- 8.자료구조 8.5 열거형(Enum)
- 8.자료구조 8.4 사전
- 8.자료구조 8.3 튜플
- 8.자료구조 8.2 리스트
- 8.자료구조 8.1 문자열
- 7. 클래스 7.4 상속
- 7. 클래스 7.3 객체 초기화
- 7. 클래스 7.2 클래스의 사용
- 7. 클래스 7.1 클래스 정의하기
- 6. 모듈 과 패키지 6.5 패키지
- 6. 모듈 과 패키지 6.4 모듈의 name속성
- 6. 모듈 과 패키지 6.3 바이트 컴파일된 .pyc 파일
- 6. 모듈 과 패키지 6.2 dir() 함수를 이용하여 모듈 정보 알아내기
- 2018년 3월 프로그래밍 인기순위
- 6. 모듈 과 패키지 6.1 모듈을 정의하고 불러오기
- 5. 함수 5.7 람다(lambda) 함수
- 5. 함수 5.6 파이썬 내장함수
- 5. 함수 5.5 DocString
- 5. 함수 5.4 VarArgs 매개 변수
- 5. 함수 5.3 키워드 인수
- 5. 함수 5.2 기본 인수값
- 5. 함수 5.1 지역변수
- 4. 제어문 다루기 4.3 for
- 4. 제어문 다루기 4.2 while
- 4. 제어문 다루기 4.1 if문
- 파이썬 Python - OS.PATH 기초 정리
- 3. 연산자와 수식
- 2. 파이썬 기초 2.2 파이썬 기초
- 2. 파이썬 기초 2.1 첫걸음
- python 메소드 및 함수정리 모음
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #4
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #3
- 파이썬으로 간단한 스케줄러 만들기
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #2
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #1
- 파이썬(python)으로 RSS 크롤링하기
- Ubuntu(우분투) 리눅스에서 파이썬 설치하기
- 유용한 파이썬 라이브러리 모듈
- 파이썬으로 오늘날짜 폴더 생성하기
- 파이썬 프로그래밍에 대해서
- 두뇌를 정복하는 방법
- 윈도에서 BeautifulSoup4 설치방법
- 파이썬 알고리즘 배우기 좋은 사이트
12. 디버깅
C급 개발자와 함께하는 파이썬
12. 디버깅
디버깅이란 위키백과를 통해 알아본 바로는 다음과 같이 정의하고 있습니다.
“디버그(영어: debug), 디버깅 (debugging) 혹은 수정은 컴퓨터 프로그램의 정확성이나 논리적인 오류(버그)를 찾아내는 테스트 과정을 뜻한다. 디버깅(debugging), 수정이라고도 한다. 일반적으로 디버깅을 하는 방법으로 테스트 상의 체크, 기계를 사용하는 테스트, 실제 데이터를 사용해 테스트하는 법이 있다.”
위키백과에서 정의 하듯이 디버깅이랑 프로그램이 오류없이 잘 돌아가도록 논리적인 오류나 버그를 찾아내는것을 뜻합니다.
대부분의 프로그래밍을 하기 위해서는 디버깅 방법을 알고 있어야 합니다. 그래야 라인별로 문제가 있는 부분을 찾아내서 고쳐나갈 것입니다.
디버깅은 PyCharm 프로그램을 통해서 알아볼 것입니다. 파이썬을 개발시에 가장 많이 사용하는 IDE입니다. 이제까지 배운 부분을 PyCharm으로 해보셔도 좋습니다.
다운로드할 주소는 : https://www.jetbrains.com/pycharm/?fromMenu
위의 주소로 들어가서 파이참을 다운로드 받았습니다.
받은 파일을 실행하면 설치화면이 출력됩니다.
PyCharm을 설치할 폴더를 선택합니다. 기본으로 설치하면 위의 폴더에 설치합니다.
옵션을 모두 선택합니다.
바로가기 메뉴를 선택합니다.
인스톨 버튼을 클릭하면 인스톨화면으로 들어가서 인스톨이 되고 있습니다.
show detail버튼을 클릭하면 파일들의 진행현황이 나옵니다. 그런데 hide detail은 없네요.
설치가 모두 끝났습니다. 설치후 프로그램을 실행하도록 하고 Finish버튼을 클릭한다.
개인정보 정책에 대해서 Accept버튼을 클릭합니다.
라이센스를 고르라고 하는데. 프리버전으로 선택합니다. 이메일도 선택이기 때문에 입력하지 않아도 됩니다.
Accpt 버튼을 클릭합니다.
PyCharm 이 로드되는 화면입니다.
PyCharm 환경설정입니다. Keymap scheme은 제가 이클립스를 주로 사용했었으므로 Elipse를 선택하였습니다. 다른거 선택하셔도 됩니다.
새로운 프로젝트를 만들거나 기존 프로젝트를 오픈합니다.
Pure Python프로젝트를 선택하고 Location을 선택합니다.
interpreter : 파이썬이 여러버전으로 설치되어있다면 사용하는 인터프리터를 선택하시면 됩니다.
모두 끝나면 환영 메시지가 출력됩니다.
파이썬 프로그래밍을 만들기 위해 파일을 만들어 보도록 하겠습니다. 위와 같이 PyCharm에서 마우스 오른쪽 버튼을 클릭하면 New > Python File을 선택합니다.
저는 테스트를 위해서 debugging.py라는 파이썬 파일을 만들어서 위와 같이 코딩하였습니다. 디버깅을 하기 위해서는 break point를 표시해두고 해당 표시 부분에서 값을 확인하는 작업을 합니다. 이러한 break point를 표시하는 방법은 총 3가지의 방법이 있습니다.
첫번째로 위와 같이 Run > Toggle Line Breakpoint 를 클릭하면 현재 선택된 행에 Breakpoint가 설정되게 됩니다.
두번재로 소스보기 부분에 보면 회색으로 라이넘버가 나오는 부분이 있습니다. 이 부분을 마우스로 클릭하면 Breakpoint가 설정되게 됩니다.
세번째로는 위에 나와 있는 바와같이 Ctrl+Shift+B를 클릭하면 Breakpoint가 설정됩니다.
설정된 모습은 아래와 같습니다.
이러한 Breakpoint는 행마다 설정할수 있습니다. 원하는 행에 설정할수 있으며 아래와 같이 여러행인경우 해당 행마다 값을 찍어보거나 할수 있습니다.
이러한 디버깅은 한줄한줄 정확한 값으로 나타나는지 확인함으로써 프로그램의 품질을 높여주고 이후 에러가 일어나는것을 방지합니다.
12.99 요약
이상과 같이 파이썬에서 디버깅을 하는 방법에 대해서 알아보았습니다. 지금은 작은 프로그램으로 눈으로 파악해도 정답이 있을정도로 작은 프로그램이지만 프로그램이 커지고 논리적으로 복잡한 알고리즘이 들어가게 되면 라인라인 제대로 프로그램이 수행되는지 확인이 필요합니다.
이 장의 내용을 충분히 숙지하여 이후 작업에서 문제가 없도록 하시기 바랍니다.
Well is it known that ambition can creep as well as soar.