게시:
수정:

__init.py__ 생성

해당 디렉토리가 패키지임을 인식시키기 위하여 __init__.py 파일을 만들어야 한다.
프로젝트 디렉토리를 만들고 그 안에 __init__.py라는 빈 파일을 생성한다.

첫 번째 module 생성

곱셈을 수행하는 함수를 갖는 모듈을 만든다.
모듈 안에 파라미터 a, b가 입력되면 곱셈 수행 후 값을 반환하는 코드를 작성한다.

# project/calculator/multiplication.py

def multiply(a, b):
    return a * b

두 번째 module 생성

매개변수를 더한 값과 매개변수를 곱한 값(첫 번째 모듈 사용)을 더하는 모듈을 만든다.

첫 번째 모듈을 사용하기 위하여 해당 모듈을 import한다.
같은 패키지 안에 있는 모듈을 사용할 것이므로 Relative path를 사용한다.

# project/calculator/add_and_multiply.py
from .multiplication import multiply


def add_and_multiply(a, b):
    return (a + b) + multiply(a, b)

메인 프로그램 생성

하위 모듈을 사용하는 최상위 메인 파일을 만든다.

두 번째 모듈의 함수를 사용하기 위하여 해당 모듈을 import한다. __name__ = '__main__'인 파일이 패키지를 불러와야 하므로 Absolute path를 사용한다.

main.py가 장래에 모듈로 사용될 수 있는 가능성이 있으므로 '__main__'인 경우에만 동작할 수 있도록 제어문(if)을 선언한다.

# project/main.py
from calculator.add_and_multiply import add_and_multiply


if __name__ == '__main__':
    print(add_and_multiply(10, 50))

실행 및 결과물 확인

프로젝트 디렉토리 구성

프로젝트 디렉토리 안에 main.py와 calculator 패키지가 생성된 것을 확인할 수 있다.

python package directory image


테스트 결과

main.py에서 Argument로 ‘10’, ‘50’을 전달하였을 때 각 인수를 더한 값인 ‘60’과 곱한 값인 ‘500’을 더한 최종 값인 ‘560’이 정상적으로 출력되는 것을 확인할 수 있다.

result of module test case

댓글남기기