Conda总是打开根环境
问题描述:
如果我'源激活'非根环境(在我的情况下“数据”),然后启动Jupyter笔记本,env似乎切换到根。我可以说,因为如果我尝试打开一个新的python笔记本,New下的下拉列表表示Python [Root]。我也无法在我的env中导入软件包,但不能在根目录下导入。Conda总是打开根环境
(data) Edwards-MacBook-Pro:~ mango$ conda list
# packages in environment at /Users/mango/anaconda/envs/data:
#
boto 2.42.0 py35_0
bz2file 0.98 py35_0
cycler 0.10.0 py35_0
freetype 2.5.5 1
gensim 0.12.4 np111py35_0
libpng 1.6.22 0
matplotlib 1.5.1 np111py35_0
mkl 11.3.3 0
numpy 1.11.1 py35_0
openssl 1.0.2i 0
pandas 0.18.1 np111py35_0
pip 8.1.2 py35_0
pyparsing 2.1.4 py35_0
pyqt 4.11.4 py35_4
python 3.5.2 0
python-dateutil 2.5.3 py35_0
pytz 2016.6.1 py35_0
qt 4.8.7 4
readline 6.2 2
requests 2.11.1 py35_0
scikit-learn 0.17.1 np111py35_2
scipy 0.18.1 np111py35_0
seaborn 0.7.1 py35_0
setuptools 27.2.0 py35_0
sip 4.18 py35_0
six 1.10.0 py35_0
smart_open 1.3.4 py35_0
sqlite 3.13.0 0
tk 8.5.18 0
wheel 0.29.0 py35_0
xz 5.2.2 0
zlib 1.2.8 3
(data) Edwards-MacBook-Pro:~ mango$ ipython
Python 3.5.2 |Anaconda custom (x86_64)| (default, Jul 2 2016, 17:52:12)
Type "copyright", "credits" or "license" for more information.
IPython 4.2.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: import seaborn
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-085c0287ecb5> in <module>()
----> 1 import seaborn
ImportError: No module named 'seaborn'
In [2]:
gensim发生同样的情况,所以它不仅仅是seaborn。
答
我设法解决了这个问题。 Conda使用ipython和jupyter安装[root]环境。如果你创建一个env,那么这些默认情况下是不可用的。因此,在创建和env时,请确保显式列出这些软件包,或者克隆根目录。克隆根可能会导致体积较大的env,它可能不太适合生产,但更适合沙箱环境。
我发现了这个问题,用python试了一下上面的测试,发现我的软件包显示我在数据环境中。然后我决定尝试使用conda install anaconda-navigator
的Anaconda Navigator程序。虽然我喜欢cli,但这个基于GUI的程序似乎是管理软件包的更好方式。