在我当前环境中的包的ImportError
我想恢复一些旧的IPython笔记本并将它们更新到Python 3.我试图让它们在旧环境中首先工作并发现棘手的难题,在我的包中获取ImportErrors目前的环境。我正在进行Anaconda Python安装。在我当前环境中的包的ImportError
我开始我的笔记本电脑先导航到我的项目的文件夹:
cd /folder/of/project
然后:
jupyter notebook
我创建了一个新的笔记本电脑,这里是从!conda list
内的笔记本电脑的摘录和我得到的错误:
# packages in environment at /anaconda2:
#
...
Delorean 0.6.0 <pip>
...
pylint 1.7.2 py27h718c7e7_0
pymongo 3.4.0 py27_0
pyodbc 4.0.17 py27hc9de18c_0
...
显然,p感兴趣的环境,Delorean
和pymongo
,都在环境中。 pymongo
原本是通过conda
安装的,但Delorean
只能通过pip
安装。
[1] import pymongo
ImportError Traceback (most recent call last)
<ipython-input-2-ec8fdd1cd630> in <module>()
----> 1 import pymongo
ImportError: No module named pymongo
[2] from delorean import Delorean
ImportError Traceback (most recent call last)
<ipython-input-3-2b02cbe45080> in <module>()
----> 1 from delorean import Delorean
ImportError: No module named delorean
我已经尝试了这个使用畅达创建以及在默认环境中的各种虚拟环境。我看了StackOverflow上的各种问题,仍然没有解决方案。
在回应评论,这里是jupyter的路径和Python:
$ which jupyter
/anaconda2/bin/jupyter
$ which python
/anaconda2/bin/python
要复合的奥秘,试图导入从蟒蛇外壳包装由@Sraw的建议,完美的作品。
$ python
Python 2.7.13 |Anaconda custom (x86_64)| (default, Sep 21 2017, 17:38:20)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pymongo
>>> from delorean import Delorean
>>>
因此,该问题仅限于jupyter笔记本电脑内。
我已解决此问题。它是由我试图搭配不同的Python 2和3版本以及多个试用虚拟环境而创建的。我已经结束了针对所有用户的旧用户特定的anaconda安装和新的anaconda根。这一发现是通过发现
import sys
sys.path
给不同的报告,当我跑这从Python的外壳和里面的笔记本制造。
我清除了用户特定的anaconda安装,重新安装了最新的anaconda版本,添加了相关的软件包,并安装了并行ipython内核(as described here)。
该问题已得到解决,并充当了保持root python安装清洁并正确使用虚拟环境的重要性的一课。
很确定您不会在正确的环境中运行您的脚本。你如何开始? – jbndlr
你是否在同一个环境中启动你的'jupyter'而不是另一个环境? – Sraw
谢谢,我编辑了我的问题来描述我如何启动笔记本。即使我不使用虚拟环境,错误也会重复。 – gauden