파이썬에서 모듈(Module)이란 파이썬 코드를 논리적으로 묶어서 관리하고 사용할 수 있도록 하는 것으로, 하나의 .py 파일이 하나의 모듈이 됩니다.
모듈 안에는 함수, 클래스, 변수 등을 정의할 수 있고 실행코드가 포함될 수 도 있습니다.
따로 모듈로 모아놓은 이유는 다른 파일에서 재사용이 가능하게하고 전체 코드가 한 파일에 넣기에는 너무 커졌을 때 여러 파일로 나누어서 정리하기 위해서입니다.
import <모듈이름>
import my_module
import 키워드를 사용해서 모듈을 불러와 사용하면 됩니다.
my_module.my_func()
my_module 모듈의 my_func 함수를 호출 하고 싶으면 위와 같이 사용할 수 있습니다.
from import 키워드를 사용해서 모듈을 불러오는 방법도 있습니다.
from my_module import my_func, my_var
print(my_var)
my_func()
my_module 모듈에서 my_func 함수와 my_var 변수를 import 하려고 한다면 위와 같이 할 수 있습니다.
패키지(Package) 또한 모듈(Module)과 마찬가지로 다른 파일에서 불러와서 사용하는 개념입니다.
차이점은 모듈보다 더 크고 복잡한 코드라는 점입니다.
모듈은 단순한 파이썬 파일이지만 특정 모듈은 코드의 양이 크기 때문에 한 파일에 넣는 것이 비효율적일수도 있습니다.
이 경우에는 여러 파일에 나누어서 코드를 관리하는게 효과적입니다.
여러 파일에 나누어진 코드들도 다른 곳에서 하나의 모듈로 불러와서 사용할 수 있게끔 해주는 것이 바로 패키지(Package) 입니다.
import pkg.mod1
from pkg.mod2 import func2
pkg.mod1.func2()
func2()
패키지는 일반 모듈처럼 import해서 사용할 수 있습니다.