在常规包装中:
package/
__init__.py
sub_package_a/
__init__.py
foo.py
sub_package_b/
__init__.py
bar.py
为了能够做到
import package
package.sub_package_a.foo
package.sub_package_b.bar
在没有缺少属性错误的情况下,您需要该__init__.py
文件包含:
__init__.py
from . import sub_package_a
from . import sub_package_b
sub_package_a/__init__.py
from . import foo
sub_package_b/__init__.py
from . import bar
使用隐式命名空间包:
dir-a
package/
sub-package-a/
__init__.py
foo.py
dir-b/
package/
sub-package-b/
__init__.py
bar.py
有可能实现吗?
import package
package.sub_package_a.foo
package.sub_package_b.bar
目前我拥有的最好的是:
import package
from package import sub_package_a
from package import sub_package_b
package.sub_package_a.foo
package.sub_package_b.bar