파이썬 기초 문법은 이번 포스팅이 마지막입니다. 프로그래밍 문법을 영문법 공부하듯이 자세하게 외우면서 하면 응용도 어렵고 오래 걸립니다.
최대한 빠르게 이해하고, 실제 프로그램을 만들어보면서 익히는 것이 가장 좋고 또 재미도 있습니다.
파이썬 기초 – 예외 처리 (Exception)
여기까지 오면서 작성한 프로그래밍 문구를 실행하면 오류가 발생한 적이 있을 것입니다.
개발자는 오류를 보고 수정하면 되지만, 사용자에게는 오류를 보여줘서는 안됩니다.
혹은 어떤 프로그램이 실행 중일 때, 오류로 인해 중지되면 안되는 경우가 있습니다.
이럴 때 “예외 처리”를 합니다.
예외 처리는 다음과 같이 합니다.
try :
명령
except :
오류가 발생했을 때 실행할 명령
예제로 좀 더 살펴보겠습니다.
“banana”라는 문자열은 숫자로 나눌 수가 없습니다. 그래서 실행하면 오류가 발생합니다.
이런 경우, 다음 라인처럼 예외처리를 해주면, 오류가 발생할 경우 except : 아래 적힌 명령을 실행하게 됩니다.
만약, 오류가 나더라도 다음 스텝으로 반드시 실행해야 하는 명령이 있다면? 그 때는, “finally : “를 사용합니다.
이와 같이 오류가 발생했을 경우 “except :” 아래 명령어와 함께 “finally :” 는 꼭 실행하고 마무리 됩니다.
파이썬 기초 – 함수 (Function)
함수는 “미리 만들어 놓은 명령어의 집합” 입니다. 반복해서 해야 할 작업이 있다면, “함수”형태로 만들어 두고 부르기만 하면 됩니다.
예를 한번 들어보겠습니다. 아래와 같은 반복 작업이 있습니다.
1. 변수는 2개, a와 b가 있다.
2. 먼저 a + b를 한 값을 c로 넣는다.
3. c에 * 2를 한 값을 d로 넣는다.
4. d를 4로 나눈 값을 출력한다.
이 작업을 할 때마다 쓰려면 얼마나 귀찮고 피곤할까요? 그래서 함수로 묶고 필요할 때 마다 불러서 숫자만 넣어주면 반복작업을 피할 수 있습니다.
파이썬 기초 – 모듈 (Module)
모듈을 쉽게 표현하면 “미리 만들어진 기능이 담겨있는 파일” 이라고 할 수 있습니다.
예를 들어 설명해 보겠습니다.
어떤 작업을 하던지 계산기 기능은 공통으로 사용한다고 가정해봅시다. 그럼 작업 할 때마다 계산기 기능을 구현하기 위한 코드를 짜는 것은 너무 비효율 적입니다.
아, 눈치 빠른 분들은 여기서 “그럼 함수로 만들어서 복사하면 되지 않나?”라는 생각이 들 수 있습니다.
좋은 질문인데, 함수 코드를 복사를 하게 되면, 똑같은 코드가 여러 파일에 담겨 있을 것입니다.
프로그래밍에서는 이러한 반복 코드를 비효율적이라고 하고 매우 싫어합니다. 그래서, 파일 하나에 계산기 기능이 담긴 코드를 담아두고 이 파일만 불러와서 사용합니다.
다만, 주피터 노트북에서 모듈을 만들고 불러오려면 조금 귀찮은 작업을 해야 합니다.
먼저, 아래와 같이 auto_calculator 함수를 만들고 “shift + enter”를 눌러 실행합니다.
그리고 위에 이름을 “calculator”로 변경합니다.
위에 “File”을 누르고, Download as -> Python(.py)를 클릭하면 다운로드 됩니다.
다운로드 된 파일을 “C:\사용자\컴퓨터이름” (여기가 주피터 노트북 파일이 저장되는 위치입니다)에 넣습니다.
다시 주피터 노트북으로 돌아와서 새 파일을 만들고 “import 모듈명(파일명)”을 작성한 후에 함수를 작성하면 아래와 같이 결과를 볼 수 있습니다.
다른 방법으로는 calculator.py 파일에서 auto_calculator 함수를 가져와 사용한다는 의미로 “from calculator import auto_calculator”라고 작성합니다.
그리고 auto_calculator 함수 안에 숫자를 넣어주면 아래와 같이 결과를 볼 수 있습니다!
파이썬 기초 – 패키지/라이브러리 (Package/Library)
패키지(Package)와 라이브러리(Library)는 비슷한 의미로 사용됩니다. 예를 들어 Pandas의 경우 Pandas Package 혹은 Pandas Library라고 부릅니다.
패키지 혹은 라이브러리는 위에서 만든 모듈의 집합입니다. 간단하게 이야기하면, 윈도우에서 폴더를 만든다고 생각해보겠습니다.
위와 같이 PyProject 폴더 안에는 auto_posting.py ~ calculator.py 까지 총 5개의 파이썬 파일이 들어있습니다.
이렇게 여러 기능을 가진 각 모듈(files)을 가지고 있는 폴더(PyProject)를 패키지 혹은 라이브러리라고 부릅니다.
이 패키지를 사용하려면 폴더를 통째로 아까 복사했던 “C:\사용자\컴퓨터이름” (여기가 주피터 노트북 파일이 저장되는 위치입니다)에 붙여 넣습니다.
다시 주피터 노트북으로 돌아와 이번에는 패키지/라이브러리(PyProject)안에 있는 모듈(calculator.py) 안에 담긴 함수 (auto_calculator)를 사용해보겠습니다.
방법 1 ( import 라이브러리(폴더)명.모듈(파일)명 )
방법 2 ( from 라이브러리(폴더)명.모듈(파일)명 import 함수명 )
파이썬 기초 – 클래스와 객체 (Class, Object)
지금까지 다룬 내용 중 가장 어려운 개념이 아닐까 싶습니다.최대한 간단하게 설명해보겠습니다.
클래스는 “설계도” 입니다. 예시를 들어보겠습니다.
“로봇”의 설계도(클래스)는 다음과 같습니다.
로봇은 머리(head), 몸(body), 팔(arm), 다리(leg)를 가지고 있고 걷기(walking), 달리기(running), 수영(swimming)을 할 수 있습니다.
이 설계도를 이용해서 로봇을 생산해야 (“객체를 생성해야”) 사용이 가능합니다.
그럼 로봇을 만들어 보겠습니다. (객체를 만들겠습니다)
객체를 만드는 방법은 “변수 = 클래스명(초기 변수 값)” 으로 표현합니다. 그리고 만든 객체로 클래스 안에 있는 함수들을 사용할 수 있습니다.
여기까지 해서 파이썬 기본 문법을 모두 마쳤습니다.
아마 첫 글부터 여기까지 오는데 2시간 정도면 충분히 오셨을 것이라고 생각합니다.
이제 다음 포스팅부터는 본격적으로 파이썬을 이용해서 웹 크롤링을 해보겠습니다.