나는 코드 조직에게 조금을 리팩토링하고 최상위 디렉토리에 좀 더 설명하는 이름을 줘야 할 것. 오늘은 happy_bananas
을 선택합니다. 그럼이 같은 파일을 구성 가정 해 봅시다 : 당신이 할 필요가 빈 __init__.py
파일을 추가한다
happy_bananas
start.py
DisplayTools.py
CollectionTools.py
그리고 당신은 다른 패키지처럼 사용, 예를 들어 수 있습니다
happy_bananas
__init__.py
start.py
DisplayTools.py
CollectionTools.py
그리고 지금 당신이 할 수있는 경우 :
from happy_bananas import DisplayTools
을 당신이 전에 것처럼.
이제 시스템에 설치하려면 패키지로 설치 스크립트를 사용해야합니다. distutils
또는 setuptools
을 사용하여이 작업을 수행 할 수 있지만 가장 간단한 방법은 Zed Shaw의 Learn Python The Hard Way Exercise 46입니다. 당신이 당신의 설치 스크립트 작성 때 다음
happy_bananas
setup.py
tests
test_happy_bananas.py
happy_bananas
__init__.py
start.py
DisplayTools.py
.
.
는, 당신이 당신의 폴더로 가서 python setup.py install
를 실행할 수 있습니다 (또는 : 당신은 정말 거기에 설명 된대로 해당 파일을 붙여 넣기와 같은 디렉토리 구조와 끝까지 복사/단지 수 python setup.py develop
) 모든 파일에서 import happy_bananas
수 있어야합니다.
파이썬의 이름 지정 규칙은 파일 및 함수 이름에 snakecase를 사용하는 것입니다. 따라서 DisplayTools.py
대신 display_tools.py
으로 이름을 변경하는 것이 좋습니다. CamelCase는 일반적으로 클래스 이름 전용입니다.
좋은 답변이지만 OP에 과도 함일 수 있습니다. –
저는 설치 프로그램을 실제로 사용하지 않습니다. 내가 질문에서 제안한 파일 트리에 따르면, 도구 가져 오기 DisplayTools.py는 (심지어는 Tools 디렉토리의 빈'__init__' 파일을 사용하여) 작동하지 않습니다 ... [namin 협약에 대한 귀하의 의견을 환영합니다] – user1187727
포장입니다 내가 기대하는 훨씬 더 복잡한 진화. 나는 나중에 이것을 처리하려고 노력할 것이다. 예를 들어 Tools/DisplayTools.py에있는 함수에 따라 Start.py를 채우고 싶습니다! – user1187727