2017-04-27 3 views
15

저는 파이썬으로 작업하기 시작했습니다. 나는 프로젝트에 requirement.txt와 setup.py를 추가했다. 그러나 나는 아직도 두 파일에 대해 혼란 스럽다. setup.py는 재배포 가능한 것들을 위해 설계되었으며, requirements.txt는 재배포 불가능한 것들을 위해 설계되었습니다. 그러나 그것이 맞는지 아닌지 나는 모른다.requirements.txt 대 setup.py

도와주세요.

+0

안녕하세요, 환영합니다 ... [mvce] (https://stackoverflow.com/help/mcve)를 만들어야합니다. –

+0

정확한 제목을 사용하여 웹을 검색 했습니까? [이 기사] (https://caremad.io/posts/2013/07/setup-vs-requirement/) (내가 검색했을 때 첫 번째 히트)는 내가 주제에 대해 읽은 최고의 내용이다. – Chris

+1

이 기사는 유용 할 수 있습니다 : https://caremad.io/posts/2013/07/setup-vs-requirement/ (유감스럽게도, 적절한 대답으로 본질을 추출하기에는 너무 게으름). 또 다른 것은 도구 (예 : 테스트)가 하나 또는 다른 방향으로 편향 될 수 있지만 Python으로 작업하기 시작한 경우 귀찮게하지 않는 것입니다. – drdaeman

답변

10

requirements.txt는

이것은 당신의 개발 환경을 설정하는 데 도움이됩니다. pip과 같은 프로그램은 파일에 나열된 모든 패키지를 설치하는 데 사용할 수 있습니다. 그런 다음 파이썬 스크립트를 개발할 수 있습니다.

setup.py는

이렇게하면 재배포 할 수있는 패키지를 만들 수 있습니다. 이 스크립트는 패키지를 설치하기위한 것이지 pip -r < requirements.txt처럼 개발 환경을 준비하는 것이 아닙니다. setup.py에 대한 자세한 내용은 this answer을 참조하십시오.

프로젝트의 종속성은 두 파일에 모두 나열되어 있습니다.

+0

어떤 경우에는 그 중 하나만 가지고 있습니까? 나는 둘 다 가질 수 있습니까? –

+1

Erm ... 로컬 컴퓨터에서 재미있는 스크립트를 만들 수 있습니다. 스크립트는 다중 컴퓨터/vitualenvs에서 개발되었지만 재배포되지는 않았습니다 : requirements.txt. 스크립트는 컴퓨터에서만 개발되지만 재배포되어야합니다 : setup.py. 스크립트는 여러 환경에서 재배포 및 개발됩니다 : 둘 다. – AndreasT

+0

답변에 이것을 추가 할 수 있습니까? –

관련 문제