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