Python - 从包中导入所有类时,我可以导入特定的类

时间:2015-05-01 03:34:20

标签: python import module package

我有一个包含

树结构的包
pkg\  
    __init__.py  
    module1.py  
        Class11  
        Class12  
    module2.py  
        Class21  
        function21  

我希望特定的类和函数位于全局命名空间中,这样当我用

启动脚本时
from pkg import *

我可以直接使用Class11,Class12和function21。这可能吗?其背后的动机是允许在小脚本或交互模式下快速轻便地使用。它隐含地知道,使用更长的脚本时,不会使用import all并正确遍历包结构。

编辑:我可以在pkg' __init__.py中导入Class11,Class12和function21,但这样,当我执行常规import pkg时,我仍然可以访问Class11 pkg.Class11代替正确的pkg.module1.Class11。如果我没有pkg.module1.Class11,我希望import *成为唯一的方式。

1 个答案:

答案 0 :(得分:-1)

像这样设置__init__.py

from .module1 import Class11, Class12
from .module2 import Class21, function21