【问题标题】:import subfolder in python [duplicate]在python中导入子文件夹[重复]
【发布时间】:2013-12-24 05:37:36
【问题描述】:

我的文件夹结构如下:

/foo/trunk/mss/cloud

/foo/trunk/mss/model

我的 python 文件位于名为 test.py 的子文件夹模型中我想导入位于子文件夹 cloud 中的所有模块,所以我在 test.py 中的代码是:

import mss.cloud as cloud

但我得到一个错误:

ImportError: 没有名为 mss.clould 的模块

我应该对 PYTHONPATH 或其他任何东西进行任何更改吗?非常感谢任何帮助。

【问题讨论】:

    标签: python import subdirectory


    【解决方案1】:

    实现的一种方法是添加sys.path的相对路径,例如:

    $ find .
    .
    ./cloud
    ./cloud/foo.py
    ./model
    ./model/t.py
    
    
    $ cat cloud/foo.py
    print 'greetings from', __name__
    
    $ cat model/t.py 
    import sys, os
    sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'cloud'))    
    import foo
    
    $ python model/t.py 
    greetings from foo
    

    【讨论】:

    • 有什么方法可以改变 PYTHONPATH?
    • 确定:export PYTHONPATH=$(cd ../cloud && pwd):$PYTHONPATH
    猜你喜欢
    • 1970-01-01
    • 2013-02-19
    • 1970-01-01
    • 1970-01-01
    • 2014-03-29
    • 2015-11-25
    • 1970-01-01
    • 1970-01-01
    • 2020-01-24
    相关资源
    最近更新 更多