본문 바로가기
개발

파이썬 패키지

by 박영귤 2023. 11. 22.

소프트웨어 공학 과제를 하는 중 모듈화를 시키는 부분에서 어려움을 조금 느꼈다.

before, after

처음엔 모든 파일이 한 곳에 몰려있었다. 이것을 service, domain, controller 폴더로 배치시키는 작업을 하였다.

여기서 필수적으로 해야할 것은, 각 폴더마다 __init__.py파일을 만들어주는 것이다. 이것을 해야, 인터프리터가 해당 폴더를 패키지라고 인식한다.

 

__init__.py

해당 폴더를 패키지로 인식시켜주는 파일이다. 해당 패키지의 파일이 어디선가 import가 되면 __init__.py 파일이 실행된다. 

domain패키지의 __init__.py파일이다. 

from domain import MapInfo를 실행한다면, 위 파일이 실행된다.

다음엔 https://github.com/BillMills/python-package-example/tree/master 이 깃허브를 참고해서 예제를 만들어보면 좋을 것 같다.

 

추가로 알면 좋은 것은 setup.py 파일을 만드는 것이다. 

# setup.py

from setuptools import setup, find_packages

setup(
    name='your_package_name',
    version='0.1',
    packages=find_packages(),
    install_requires=[
        'numpy',  # NumPy 라이브러리를 추가
        # 다른 의존하는 라이브러리가 있다면 여기에 추가
    ],
    entry_points={
        'console_scripts': [
            'your_script=your_package_name.module_name:main',
            # 여기에 패키지로 실행 가능한 스크립트를 명시
            # 'your_script'은 실행할 명령어의 이름
            # 'your_package_name.module_name:main'은 실행할 함수 또는 메인 모듈을 지정
        ],
    },
)

이 파일이 있으면 pip install . 명령어를 실행시켜 내가 만든 패키지를 설치할 수 있다.

'개발' 카테고리의 다른 글

post api 간단하게 테스트  (1) 2023.11.24
Facade pattern  (1) 2023.11.23
[챗봇] 카카오톡 챗봇 만들기  (0) 2023.09.21
[pytest] 파이썬 api 테스트  (0) 2023.08.30
[python] 정규표현식  (0) 2023.08.28