我刚刚使用anaconda(称为python35)创建了一个带有python 3.5的新环境。我的根env指向python 2.7.11。我似乎无法使用这个新的env启动ipython,这就是我所做的
1. in conda prompt, activate required env: activate python35
2. confirm the version: python --version
3. launch ipython: ipython notebook
4. open a notebook and do: import sys; print (sys.version)
步骤#2,返回3.5但步骤#4总是给我2.7.11,就像ipython从root env中获取python版本一样。我该如何解决。谢谢你的帮助!
This问题是相关的,但我已经完成了它的建议。
答案 0 :(得分:8)
AFAIK,anaconda(以及venv中)的不同环境由预先 env路径激活到$PATH
环境变量。这意味着,如果在env路径(ipython
的第一个条目)中找不到某个文件(例如$PATH
),系统会在$PATH
的后续条目中搜索它并找到它在根环境中(保留在$PATH
)。要修复此行为,您需要将自己的ipython
副本安装到anaconda env:
source activate python35
(或简称activate python35
,具体取决于操作系统)conda install ipython-notebook
答案 1 :(得分:0)
我可以在我的情况下确认上面的解决方案(基本上在活动环境中安装笔记本)。我方的两个更新:
由于Anaconda 4.4(?)ipython笔记本现在是jupyter notebook。所以我不得不安装jupyter。我想,之后需要停用并激活以更新笔记本中的路径变量 - >由python -c“import sys; print(sys.path)”或笔记本中的相应命令检查。
如果您没有使用隔离的anaconda environment,您最终可能会从本机OS-Python安装中调用笔记本包,而不是Anaconda所需的。同样地,当我尝试在Anaconda环境中编译时,我遇到了cmake或cxx的问题 - 在Linux bash中可能会找到不同的根文件夹,例如“哪个jupyter”
答案 2 :(得分:0)
除了Andrey Sobolev解决方案之外,您还应该切换到conda install ipython
以获得更高版本的python3.x,并通过Ctrl+D
或conda deactivate
注销环境,然后再次激活