python在$ PATH中说“没有名为nest的模块”

时间:2012-12-28 06:37:26

标签: python shell path

import nest$PATH中出现'no module named nest'错误,这意味着我的系统/opt/nest/lib/python2.7/site-packages:中有$PATH。在这个位置有一个名为nest的目录,nest目录中的结构如下所示:

enter image description here

,显然有__init__.py。那么为什么python不能找到nest

更多信息:

我确信我使用python2.7安装了nest,并使用相同的python2.7运行它。

2 个答案:

答案 0 :(得分:2)

根据docs,有几种方法可以安装python包:

  1. 使用distutils - 正在运行python setup.py install将软件包安装到您当前发行版的site-packages;
  2. 在Unix上将--user传递给setup.py install将模块安装到~/.local/lib/python2.7/site-packages,并且此目录在正常条件下始终包含在sys.path;
  3. --home=$HOME传递给setup.py install安装$HOME目录下的模块。该目录应明确包含在sys.path;
  4. 修改python搜索路径:
  5. 你可以做任何一件事

       import sys
       sys.path.append('/opt/nest/lib/python2.7/site-packages')
    

    在脚本的开头;或者你可以添加

    PYTHONPATH=/opt/nest/lib/python2.7/site-packages
    export PYTHONPATH
    

    ~/.bash_profile文件的末尾。

    更新:

    只是尝试安装nest,发现它有两种版本 - 32位(/opt/nest/lib下)和64位(/opt/nest/lib64下)。您可能尝试使用具有64位python发行版的32位python包。尝试将./zshrc中的字符串更改为 PYTHONPATH=/opt/nest/lib64/python2.7/site-packages并查看它是否有效。它至少对我有用。

答案 1 :(得分:0)

要正确设置相关的环境变量,NEST安装必须提供一个配置,您可以直接获取

source <installpath>/bin/nest_vars.sh

这样可以正确设置PATHPYTHONPATH,并将NEST指向动态加载内容(模块,帮助页面等)的正确目录