如何在不同的目录中从site-packages导入模块?

时间:2016-09-29 12:58:32

标签: python linux bash python-3.x

我制作了一个模块并将其移至/root/Downloads/Python-3.5.2/Lib/site-packages

当我在此文件夹中运行bash命令python3以启动ide并导入其运行的模块时。但是,如果我在任何其他目录(例如python3)中运行/root/Documents/Python,则说明

ImportError: No module named 'exampleModule'

我的印象是,无论目录如何,Python都会自动搜索site-packages中的模块。如何修复它以便无论我在哪里都能正常工作?

2 个答案:

答案 0 :(得分:0)

我建议您将模块的位置添加到PYTHONPATH环境变量中,而不是移动模块。如果设置了该值,则python解释器将知道在哪里查找您的模块。

例如在Linux上

export PYTHONPATH=$PYTHONPATH:<insert module location here>

答案 1 :(得分:0)

有两种方法可以使python找到您的模块:

  1. 按照bmat的建议,将模块所在的路径添加到PYTHONPATH
  2. 添加模块在脚本中的驻留路径,如下所示:
    import sys
    sys.path.insert(0, '/root/Downloads/Python-3.5.2/Lib/site-packages')