자료구조 부분이 드디어 끝났죠? 좀 지루하셨을 수도 있지만, 컴퓨터에 있어서 자료구조의 중요성은 절대적이라고 할 만큼 크답니다. 작게는 CPU 내의 기억장소에서부터, 크게는 파일, 데이터베이스, 전체 시스템에까지 두루 적용된다고 하니까 틈틈이 공부해두시면 좋겠네요.
우리가 지금까지는 혼자서 변수, 함수를 만들어 쓰면서 자급자족하는 방법을 배웠다고 한다면, 이제부터는 남이 만들어 놓은 부품을 가져다가 사용하는 방법을 배울 차례입니다.
우리가 복잡한 프로그램을 작성하기 위해서 필요한 모든 과정을 직접 만들어야 한다면 어떤 모습이 될까요? 전체적인 모습에서부터 작은 기능 하나하나까지 모두 구상해서, 만들고, 오류를 수정해서 한 곳에 모아두면 또 오류가 생기고… 더구나, 또 다른 프로그래머는 나와 비슷한 기능을 하는 프로그램을 만들면서 똑같은 시행착오를 답습할 테구요.
그래서, 이런 문제를 해결하기 위해 대부분의 프로그래밍 언어에서는 모듈이라는 개념을 사용합니다. 모듈은 프로그램의 꾸러미라고 생각하시면 되지요.
할머니 댁 집수리를 해야 해서 여러 가지 공구를 들고 간다고 상상해 봅시다. 손에 다 들고 가기는 불편하니 공구통에 넣는 게 좋겠죠?
math 모듈
수학적인 계산 기능이 필요하다면 math라는 모듈을 불러와서 사용하시면 됩니다.
>>> import math # bring math module
제곱근(square root)을 구해볼까요?
>>> math.sqrt(2) 1.4142135623730951 >>> math.sqrt(3) 1.7320508075688772 >>> math.sqrt(4) 2.0
원주율도 알아보겠습니다.
>>> math.pi 3.1415926535897931
위에서는 math 모듈 내에 정의되어 있는 pi 변수를 사용했습니다. pi는 원주율을 뜻하지요.
calendar 모듈
이번에는 달력을 불러볼까요? 딱 두 줄만 치면 됩니다.
>>> import calendar >>> calendar.prmonth(2013, 7) July 2013 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
훌륭하죠?
tkinter 모듈
이번에는 더욱 훌륭한 것을 보여드리지요.
>>> from tkinter import * >>> widget = Label(None, text='I love Python!') >>> widget.pack()
이렇게 파이썬에서는 좋은 기능들을 모듈로 묶어서 자체적으로 제공해 준답니다. 파이썬 뿐만이 아니라 대부분의 언어에서 이런 식으로 프로그래밍을 편리하게 할 수 있도록 지원해 주지요.