Это, вероятно, пережиток моих дней как программиста ac #, и мне, вероятно, просто нужно изучить "питонический" способ делать вещи.Я относительно новичок в python, но уже много лет пишу на c #.
В моем проекте есть модуль python с именем applib, где я храню несколько классов.Каждый класс содержится в своем собственном файле с тем же именем (например, Foo.py имеет класс с именем Foo, Bar.py имеет класс с именем Bar и т. Д.).
Когда я хочу использовать класс, ядолжен сказать
import applib.Foo
, за которым следует что-то вроде
my_foo=applib.Foo.Foo()
Это приводит к необходимости дважды указывать "Foo" в моем объявлении (один раз для имени модуля, а затем снова дляучебный класс).В c # я мог контролировать это с помощью директивы пространства имен в верхней части файла классов, но в python я не знаю способа контролировать это, за исключением помещения всех моих классов в один файл.Я знаю, что могу также импортировать класс, используя
from applib.Foo import Foo
, но это все еще дублирование элементов пространства имен, которых я хочу полностью избежать.
Может кто-нибудь дать мне некоторые рекомендации по более питонической методологии для структуры пространства имен в приложении?