개요
부끄럽게도 파이썬 import structure가 구성되어 있는 상태에서만 써봐서 새로 프로젝트를 구성하려고 하니 module not found
를 경험하게 되었다.
이에 따라 표준 디렉토리 구조 및 패키지 임포트 방법을 살펴본 뒤 정리해둔다.
디렉토리 구조
project.git
/project
/subpackage
__init__.py
bar.py
__init__.py
/subpackage2
__init__.py
baz.py
foo.py
foo.py는 아래와 같이 구성한다.
bar에서는 아래와 같은 import도 가능하다. 즉 같은 depth 다른 디렉토리의 클래스 import가 가능하다.
실행 시 유의사항
위와 같이 패키지 구조를 잡아둔 뒤 ModuleNotFound
없이 정상 실행 하려면 아래의 2가지 중에 취향대로 실행해야 한다.
Reference
- https://stackoverflow.com/questions/40304117/import-statement-works-on-pycharm-but-not-from-terminal
- https://stackoverflow.com/questions/193161/what-is-the-best-project-structure-for-a-python-application