오늘은 모듈을 어떻게 불러오는지 알아보도록 하죠. 어제 해보셔서 대충은 알고 계시겠지만 import
를 사용하면 모듈을 불러올 수 있습니다. import는 '수입하다', '가져오다'라는 뜻을 갖고 있구요, 컴퓨터에서는 다른 프로그램으로부터 데이터를 갖고 오는 것을 뜻하지요.
파이썬에서 임포트를 하는 방법 두 가지를 알아보겠습니다.
첫 번째 방법:
import 모듈
두 번째 방법:
from 모듈 import 이름
첫번째 방법은 모듈 전체를 가져오구요, 두번째 방법은 모듈 내에서 필요한 것만 콕 찍어서 가져오는 방법이죠.
두 방법을 비교해볼까요? 어제 소개해드린 tkinter(티 케이 인터) 모듈을 두 가지 방법으로 임포트해 보겠습니다.
>>> import tkinter >>> tkinter.widget = tkinter.Label(None, text='I love Python!') >>> tkinter.widget.pack()
첫 번째 방법으로 모듈을 불러오면 모듈 내의 변수를 사용하기 위해서는 모듈.변수
의 형식으로 써주어야 합니다. 매번 써주려면 좀 번거롭겠죠?
>>> from tkinter import * >>> widget = Label(None, text='I love Python!') >>> widget.pack()
두 번째 방법은 모듈 내의 이름을 콕 찍어서 가져오는 방법인데, 위에서는 tkinter
에 있는 것을 전부(*
) 가져왔습니다. 이렇게 하면 좀 더 편리하군요.
하지만 마냥 좋기만 한 방법은 아니랍니다. 아래의 예에서는 문자열이었던 Label
이 임포트 문 실행 후 tkinter
의 Label
로 바뀌어 버린 것을 볼 수 있습니다.
>>> Label = 'This is a Label' >>> from tkinter import * >>> Label <class 'tkinter.Label'>
이런 특성을 이해하고 상황에 맞게 사용하시면 됩니다.
지금까지 모듈을 불러오는 방법을 알아봤는데요, 불러온 모듈이 필요 없을 땐 어떻게 할까요? 필요 없는 모듈은 요렇게 지워주면 됩니다.
del 모듈
꼭 그렇게 해줄 필요가 있을까 싶지만, 프로그램을 짜다보면 이런 저런 일이 생기니까 알아두자구요.
한 번 임포트한 모듈을 다시 불러와야 할 때는 아래와 같이 다시 로드(reload) 할 수 있답니다.
from importlib import reload reload(module)