繁体   English   中英

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

[英]python says “no module named nest” when it is in the $PATH

import nest$PATH时会给出“没有名为 nest 的模块”错误,这意味着在我的系统$PATH中有一个/opt/nest/lib/python2.7/site-packages: 在这个位置有一个名为nest的目录, nest目录内的结构如下所示:

在此处输入图片说明

,显然有一个__init__.py 那么为什么python找不到nest呢?

更多信息:

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

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

  1. 使用distutils - 运行python setup.py install将包安装到当前发行版的site-packages
  2. --user传递给setup.py install将模块安装到~/.local/lib/python2.7/site-packages在 Unix 上,并且该目录在正常情况下始终包含在sys.path
  3. --home=$HOME传递给setup.py install会在$HOME目录下安装模块。 这个目录应该明确地包含在sys.path
  4. 修改python搜索路径:

你可以做任何一个

   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 )。 您可能已经尝试将 32 位 python 包与 64 位 python 发行版一起使用。 尝试将./zshrc的字符串./zshrcPYTHONPATH=/opt/nest/lib64/python2.7/site-packages并查看它是否有效。 至少对我有用。

为了正确设置相关的环境变量,NEST 安装有一个你可以直接获取的配置

source <installpath>/bin/nest_vars.sh

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM