소개
어느 시점에서는 다른 사람, 아마도 동료에게 코드를 제공하고 싶을 것입니다. 이 섹션에서는 그렇게 하는 가장 기본적인 기술을 제공합니다. 더 자세한 정보는 Python Packaging User Guide를 참조해야 합니다.
어느 시점에서는 다른 사람, 아마도 동료에게 코드를 제공하고 싶을 것입니다. 이 섹션에서는 그렇게 하는 가장 기본적인 기술을 제공합니다. 더 자세한 정보는 Python Packaging User Guide를 참조해야 합니다.
/home/labex/project 디렉토리의 프로젝트 최상위 레벨에 setup.py 파일을 추가합니다.
## setup.py
import setuptools
setuptools.setup(
name="porty",
version="0.0.1",
author="Your Name",
author_email="you@example.com",
description="Practical Python Code",
packages=setuptools.find_packages(),
)
프로젝트와 관련된 추가 파일이 있는 경우, MANIFEST.in 파일을 사용하여 지정합니다. 예를 들어:
## MANIFEST.in
include *.csv
MANIFEST.in 파일을 setup.py와 동일한 디렉토리에 넣습니다.
코드를 배포하려면 setup.py 파일을 사용합니다. 예를 들어:
$ python setup.py sdist
이렇게 하면 dist/ 디렉토리에 .tar.gz 또는 .zip 파일이 생성됩니다. 이 파일은 다른 사람에게 제공할 수 있는 것입니다.
다른 사람들은 다른 패키지와 마찬가지로 pip를 사용하여 Python 코드를 설치할 수 있습니다. 이전 단계에서 생성된 파일을 제공하기만 하면 됩니다. 예를 들어:
$ python -m pip install porty-0.0.1.tar.gz
위 단계는 다른 사람에게 제공할 수 있는 Python 코드 패키지를 만드는 가장 기본적인 사항을 설명합니다. 실제로는 타사 종속성, 응용 프로그램에 외부 코드 (예: C/C++) 가 포함되어 있는지 여부에 따라 훨씬 더 복잡할 수 있습니다. 이는 이 과정의 범위를 벗어납니다. 우리는 단지 작은 첫 걸음을 내디뎠을 뿐입니다.
연습 문제 9.3 에서 생성한 porty-app/ 코드를 사용하여 여기에 설명된 단계를 재현할 수 있는지 확인하십시오. 특히, 최상위 디렉토리에 setup.py 파일과 MANIFEST.in 파일을 추가합니다. python setup.py sdist를 실행하여 소스 배포 파일 (source distribution file) 을 만듭니다.
마지막 단계로, Python 가상 환경 (virtual environment) 에 패키지를 설치할 수 있는지 확인하십시오.
축하합니다! 배포 (Distribution) 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.