파이썬 setup.py 이해하기
setup.py 란 무엇인가?
setup.py
는 파이썬 프로젝트를 빌드, 패키징, 배포하는 과정을 자동화하기 위한 스크립트 파일입니다. 이 파일은 프로젝트의 메타데이터와 종속성(dependencies) 정보를 담고 있어, pip
같은 패키지 관리자가 이를 이해하고 처리할 수 있습니다.
setup.py의 구조와 작동 원리
setup.py
파일은 주로 setuptools
라이브러리를 사용하여 작성됩니다. 기본 구조는 아래와 같습니다.
1
2
3
4
5
6
7
8
9
from setuptools import setup, find_packages
setup(
name='프로젝트 이름',
version='버전 정보',
packages=find_packages(),
install_requires=['필요한 패키지 목록'],
...
)
- name: 패키지의 이름을 지정합니다.
- version: 패키지의 버전을 지정합니다.
- packages: 패키지 내의 모듈과 서브 패키지를 지정합니다.
- install_requires: 패키지 사용을 위해 필요한 다른 패키지를 지정합니다.
python setup.py install
명령을 통해 프로젝트를 설치할 수 있고, python setup.py sdist
명령을 통해 소스 배포 패키지를 생성할 수 있습니다.
setup.py와 pip의 관계
pip
는 setup.py
파일을 읽어 패키지를 설치하거나 업그레이드합니다. 예를 들어, pip install .
명령을 실행하면 현재 디렉토리의 setup.py
를 이용하여 패키지를 설치합니다. 이 과정을 통해 필요한 종속성도 함께 설치됩니다.
왜 setup.py가 필요한가?
- 표준화:
setup.py
를 사용하면 파이썬 패키지의 설치 과정이 표준화됩니다. - 종속성 관리: 필요한 패키지를 자동으로 설치해줍니다.
- 배포 용이성:
PyPI
같은 패키지 저장소에 쉽게 업로드할 수 있습니다.
setup.py
는 파이썬 개발자에게 배포와 종속성 관리를 간편하게 해주는 중요한 도구입니다. 이를 이해하고 활용하면 파이썬 프로젝트를 더 효과적으로 관리할 수 있습니다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.