У меня есть такая структура:
import a.b.c a.b.c.foo()
и это тоже работает:
from a.b import c c.foo()
но это не работает:
from a import b.c b.c.foo()
и не делает:
from a import b b.c.foo()
Как я могу сделать импорт, чтобы b.c.foo() работал?
b.c.foo()
Просто переименуйте его:
from a.b import c as BAR BAR.foo()
from a import b from a.b import c b.c = c
В вашем пакете 'b' необходимо добавить 'import c', чтобы он всегда был доступен как часть b.
b
import c
import a.b.c from a import b b.c.foo()
Порядок операторов импорта не имеет значения.