[英]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 包:
distutils
- 运行python setup.py install
将包安装到当前发行版的site-packages
;--user
传递给setup.py install
将模块安装到~/.local/lib/python2.7/site-packages
在 Unix 上,并且该目录在正常情况下始终包含在sys.path
;--home=$HOME
传递给setup.py install
会在$HOME
目录下安装模块。 这个目录应该明确地包含在sys.path
;你可以做任何一个
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
的字符串./zshrc
为PYTHONPATH=/opt/nest/lib64/python2.7/site-packages
并查看它是否有效。 至少对我有用。
为了正确设置相关的环境变量,NEST 安装有一个你可以直接获取的配置
source <installpath>/bin/nest_vars.sh
这会正确设置PATH
和PYTHONPATH
并将 NEST 指向动态加载内容(模块、帮助页面等)的正确目录
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.