У меня есть приложение wxPython с различными классами графического интерфейса в их собственных модулях в пакете под названием gui
. При такой настройке импорт главного окна будет выполняться следующим образом:
from gui.mainwindow import MainWindow
Мне это показалось беспорядочным, поэтому я изменил файл <code>__init__.py
для пакета gui
, чтобы импортировать класс непосредственно в пространство имен пакета:
from mainwindow import MainWindow
Это позволяет мне импортировать главное окно следующим образом:
from gui import MainWindow
Это выглядит лучше для меня эстетически, и я думаю, что это также более близко отражает то, что я делаю (импортирую класс MainWindow
из gui
"пространства имен"). Причина, по которой я сделал пакет gui
, заключалась в том, чтобы собрать все графические элементы вместе. Я мог бы так же легко сделать один модуль gui
и вставить в него все классы GUI, но я думаю, что это было бы неуправляемо. Теперь пакет работает как модуль, но позволяет разделить классы на их собственные модули (вместе с вспомогательными функциями и т. Д.).
Все это кажется мне несколько мелочным, я просто подумал, что брошу это туда, чтобы посмотреть, что другие думают об этой идее.