[python] 모듈과 패키지의 구조화 방법

파이썬은 모듈과 패키지를 사용하여 코드를 구조화하고 재사용하는 강력한 기능을 제공합니다. 모듈은 파이썬 파일(*.py) 단위로 작성되고, 패키지는 관련된 모듈들의 집합으로 구성됩니다.

모듈(Module)

모듈은 파이썬 코드를 담고 있는 파일로, 함수, 변수, 클래스 등을 정의할 수 있습니다.

# greetings.py

def say_hello(name):
    return f"Hello, {name}!"

def say_goodbye(name):
    return f"Goodbye, {name}!"

위의 예시는 greetings.py 모듈에 두 개의 함수를 정의한 것입니다.

패키지(Package)

패키지는 폴더 구조로 이루어져 있고, 하위 폴더에 여러 모듈이 존재하는 형태입니다. 패키지는 __init__.py 파일을 포함하여야 하며, 이 파일은 해당 디렉토리가 패키지임을 나타냅니다.

my_package/
    __init__.py
    greetings.py
    farewells.py

이들을 하나의 패키지로 묶는 경우 위와 같이 폴더를 구성할 수 있습니다.

모듈 및 패키지 사용

모듈과 패키지는 import 키워드를 사용하여 다른 파이썬 파일에서 불러올 수 있습니다.

# main.py

import my_package.greetings

print(my_package.greetings.say_hello("Alice"))

위의 예시에서 greetings.py 모듈을 my_package 패키지에서 불러와서 사용하는 방법을 보여줍니다.

패키지 내부의 모듈은 해당 패키지의 __init__.py 파일에서 가져온 후, 해당 패키지의 다른 모듈에서 사용할 수 있습니다.

이처럼 파이썬은 모듈과 패키지를 통해 코드를 구조화하고 재사용하기 쉽게 만들어 줍니다.

결론

파이썬에서 모듈과 패키지는 코드를 구조화하고 재사용성을 높이는 데 중요한 역할을 합니다. 올바르게 모듈과 패키지를 활용하는 것은 프로젝트의 유지보수성을 향상시키고, 개발 생산성을 높일 수 있습니다.