代码之家  ›  专栏  ›  技术社区  ›  Ellen Teapot

python包-按类导入,而不是按文件导入

  •  46
  • Ellen Teapot  · 技术社区  · 17 年前

    假设我有以下文件结构:

    app/
      app.py
      controllers/
        __init__.py
        project.py
        plugin.py
    

    如果app/controllers/project.py定义了类项目,app.py将按如下方式导入:

    from app.controllers.project import Project
    

    我只想做:

    from app.controllers import Project
    

    怎么做?

    1 回复  |  直到 10 年前
        1
  •  84
  •   Martijn Pieters    10 年前

    你需要放

    from project import Project
    

    在里面 controllers/__init__.py .

    注意什么时候 Absolute imports 成为默认值(python 2.7?),您将希望在模块名称之前添加一个点(以避免与名为 project )

    from .project import Project
    
    推荐文章