Я исследовал, как построить структуру папок для пользовательского пакета Python.Было несколько попыток, но ни одна из них не была применима вообщеВ частности, использование (или не использование) файла (ов) __init__.py.
У меня есть пакет, состоящий из нескольких подпакетов, каждый из которых отвечает за анализ файлов определенного типа.Поэтому в настоящее время я принял следующую структуру:
Parsers/
├── __init__.py
|
├── ExternalPackages
│ ├── __init__.py
│ ├── package1
│ └── package2
|
├── FileType1_Parsers/
│ ├── __init__.py
│ ├── parsers1.py
│ └── containers1.py
│
└── FileType2_Parsers/
├── __init__.py
├── parsers2.py
└── containers2.py
Но, кажется, не очень питонно, что когда я импортирую его пакет и хочу использовать определенный класс модуля, я должен напечатать что-то вроде
from Parsers.FileType1_Parsers.parsers1 import example_class
Есть ли соглашение о том, как структурировать такие пакеты, или какие-либо правила о том, как избежать таких длинных строк импорта?