iPython
是使用 pip
安装在 Mac OS X Mountain Lion 上的。在终端中运行ipython notebook
时,出现错误
...
File "/Users/god/.virtualenvs/datasci/lib/python2.7/site-packages/IPython/html/notebookapp.py", line 38, in <module>
from jinja2 import Environment, FileSystemLoader
ImportError: No module named jinja2
问:这里的问题是什么,我们应该如何解决?
Jinja 2 作为可选依赖项列出,请参阅 iPython 快速入门。
必须单独安装可选依赖项:
pip install Jinja2
您可以将此类依赖项安装为 ipython
的可选功能组。使用这些依赖项可以安装该功能所需的依赖项;这些组中的每一个都可以安装pip install ipython[groupname]
:
-
notebook
: 用于基于 Web 的笔记本 -
qtconsole
: 用于Qt控制台 -
parallel
或zmq
:用于 ZMQ 消息传递支持(单独的可共享内核) -
doc
:生成文档所需的工具 -
test
:运行测试套件的依赖项 -
nbformat
:用于生成笔记本交换格式的依赖项 -
nbconvert
:nbconvert
工具将笔记本格式转换为其他格式的依赖项。
因此,要安装所有依赖项以供ipython notebook
使用:
pip install ipython[notebook]
并且安装了ipython
以及依赖项,或者如果您已经安装了ipython
,它将添加缺少的包。
或者,使用以下命令安装所有可选依赖项:
pip install ipython[all]
笔记本需要 Jinja2。
要仅安装 IPython 笔记本电脑所需的组件,请使用
$ pip install ipython[notebook]
在使用 virtualenv 时刚刚遇到了一个非常相似的问题,并认为在这里找到答案会很有用。就我而言,我刚刚安装了 ipython[notebook],但它仍然无法正常工作:
(myvenv)$ ipython notebook
...
from jinja2 import Environment, FileSystemLoader
ImportError: No module named jinja2
(myvenv)$ pip install jinja2
Requirement already satisfied (use --upgrade to upgrade): jinja2 in ./luigi/lib/python2.7/site-packages
当我退出虚拟环境并重新激活deactivate
时,一切都很高兴:
(myvenv)$ ipython notebook
[I ... NotebookApp] Writing notebook server cookie secret ...
运行升级创建的类似问题。
一旦升级完成,ipython笔记本将抛出上面的jinja错误。
如果您遇到这种情况,只需卸载 jinja2 pip uninstall ...
,然后pip install Jinja2
.您可能会在另一个库上收到后续错误。冲洗并重复,直到不再出现错误。
这解决了我的问题。