본문 바로가기

코딩

[Python] 모듈, 패키지, 라이브러리, import

1. 개요

모듈 < 패키지 < 라이브러리

라이브러리 안에 여러 패키지가 있고, 패키지 안에 여러 모듈이 있다.


2. 모듈 (Module)

모듈은 .py 형식의 파일이다.

모듈 안에 함수, 클래스, 상수 등을 생성해놓으면, 이를 다른 작업 파일(.py)에 불러와서 사용할 수 있다.

 

3. 패키지 (Package)

패키지는 여러 모듈들을 포함한 폴더이다.

더 이상 설명은 필요 없다.

 

4. 라이브러리 (Library)

라이브러리는 여러 패키지를 모아놓은 것으로, 매우 유용하고, 매우 많으며, 현재에도 계속 만들어지고 있다.

예컨데 데이터 분석을 위한 라이브러리, 데이터 시각화를 위한 라이브러리 등이 있다.

 

라이브러리는 2가지로 구분된다.

① 표준 라이브러리 : 파이썬과 함께 자동으로 설치되는 라이브러리

     예시) re, math, random, os, csv, json, pickle, ...

② 외부 라이브러리 : 외부에서 직접 설치해야 하는 라이브러리 (Pypi 웹사이트에서 확인 가능)

     예시) pandas, sklearn, matplotlib, seaborn, plotly, scikit-learn, tensorflow, streamlib, ...

 

5. import

모듈, 패키지, 라이브러리로 이루어진 프로그램 집합을 사용하기 위해 import 함수를 쓴다.

import 함수를 쓰는 형식은 복잡할 것 없이 두 개 중 택1이다.

 

1) import 이름

2) from 큰폴더명 import 파일명/함수명/클래스명/상수명

 

*참고) 아래 예시에는 함수명1, 함수명2 만 써놓았지만 파일명/함수명/클래스명/상수명 모두 들어갈 수 있다.

#Example_1
import 모듈명 as 별칭

#Example_2
from 모듈명 import 함수명1, 함수명2, ...

#Example_3
from 패키지명 import 모듈명

#Example_4
from 패키지명.모듈명 import 함수명1, 함수명2, ...

#Example_5
from 패키지명.패키지명.모듈명 import 함수명1, 함수명2, ...

#Example_6
import 라이브러리명 as 별칭

#Example_7
from 라이브러리명 import 함수명1, 함수명2, ...

 

주의할 점은 함수를 불러와서 사용하는 방식이다.

아래에서 살펴보자.

 

예시)

모듈명 : modul_1

모듈 속 함수명 : func_1 

modul_1에 있는 func_1 을 불러와 사용한다고 하자.

#Example
import modul_1

a = modul_1.func_1(2, 3)

=> 모듈명으로 import를 했기 때문에 모듈명.함수명() 형식으로 작성해야 한다.

#Example
from modul_1 import func_1

a = func_1(2, 3)

=> 함수명으로 import를 했기 때문에 함수명() 형식으로 작성해도 된다.

 

이렇게 import를 무엇을 했느냐에 따라 함수 사용 형식이 달라진다.