유용한 파이썬 함수 또는 클래스 (또는 무엇이든) useful_thing
가 단일 파일에 있다고 가정 해보십시오 . 소스 트리를 구성하는 데는 본질적으로 두 가지 방법이 있습니다. 첫 번째 방법은 단일 모듈을 사용합니다.
- setup.py
- README.rst
- ...etc...
- foo.py
어디에 useful_thing
정의되어 foo.py
있습니다. 두 번째 전략은 패키지를 만드는 것입니다.
- setup.py
- README.rst
- ...etc...
- foo
|-module.py
|-__init__.py
어디에 useful_thing
정의되어 module.py
있습니다. 패키지의 경우 __init__.py
다음과 같습니다
from foo.module import useful_thing
두 경우 모두 할 수 있습니다 from foo import useful_thing
.
질문 : 어느 방법이 선호되며 그 이유는 무엇입니까?
편집 : gnat 사용자 가이 질문이 잘못 형성되었다고 말하기 때문에 공식 파이썬 패키지 자습서는 위에서 설명한 방법 중 어느 것이 선호되는지에 대해서는 언급하지 않는 것입니다. 나는 명시하고 있지 내가하지 프로 / 단점에 대한 논의를 생성하는 사회 선호하는 방법이 있는지 여부에 관심이 있기 때문에 장단점 내 개인 목록을 제공합니다 :