【发布时间】:2018-03-19 23:12:54
【问题描述】:
我正在尝试在 Jupyter Notebook 中运行 python 库的 anaconda 发行版,但是当我运行笔记本时,我不断收到 ImportErrors,因为 python 路径设置为 Mac OS X 10.11 的默认发行版
当我打印出 sys.path 和 sys.executable 时,它们在运行 python 和运行 jupyter notebook 时会有所不同。例如,
from pprint import pprint as p
import sys
p(sys.path)
在 python 中执行此操作后,我得到了正确的输出:
['',
'/Users/glennraskovich/anaconda2/lib/python27.zip',
'/Users/glennraskovich/anaconda2/lib/python2.7',
'/Users/glennraskovich/anaconda2/lib/python2.7/plat-darwin',
'/Users/glennraskovich/anaconda2/lib/python2.7/plat-mac',
'/Users/glennraskovich/anaconda2/lib/python2.7/plat-mac/lib-scriptpackages',
'/Users/glennraskovich/anaconda2/lib/python2.7/lib-tk',
'/Users/glennraskovich/anaconda2/lib/python2.7/lib-old',
'/Users/glennraskovich/anaconda2/lib/python2.7/lib-dynload',
'/Users/glennraskovich/anaconda2/lib/python2.7/site-packages',
'/Users/glennraskovich/anaconda2/lib/python2.7/site-packages/aeosa']
但是在 jupyter notebook 中运行时,我得到:
['',
'/usr/local/lib/python2.7/site-packages/dask-0.11.0-py2.7.egg',
'/usr/local/lib/python2.7/site-packages/networkx-1.11-py2.7.egg',
'/usr/local/lib/python2.7/site-packages/six-1.10.0-py2.7.egg',
'/usr/local/lib/python2.7/site-packages/Pillow-3.3.1-py2.7-macosx-10.11-x86_64.egg',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python27.zip',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old',
'/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/site-packages',
'/Library/Python/2.7/site-packages',
'/usr/local/lib/python2.7/site-packages/IPython/extensions',
'/Users/glennraskovich/.ipython']
对于 sys.executable,
p(sys.executable)
在python中,正确的输出:
/Users/glennraskovich/anaconda2/bin/python
但是在jupyter notebook中,sys.executable没有设置为anaconda版本
/usr/local/opt/python/bin/python2.7
我尝试在我的 .bashrc 和 .bash_profile 中设置 PATH,并使用命令 which python、which jupyter 等显示 anaconda 路径,但 jupyter notebook 没有使用 anaconda 路径。这可能是什么问题?
【问题讨论】:
-
您混淆了笔记本服务器的 sys.path 和正在运行的内核的 sys.path。
-
那么它是我需要以某种方式更改的内核的 sys.path 吗?我该如何解决这个问题?
标签: python python-2.7 jupyter-notebook jupyter sys