Windows系统下Anaconda环境无法切换默认Python版本求助
我来帮你排查这个困扰的问题——激活py35环境后Python版本还是停留在3.4.2,通常是环境激活未真正生效或者系统PATH优先级导致的,试试下面这些分步解决方案:
先确认环境是否真的激活成功
激活环境后,仔细看CMD命令行的开头是否出现(py35)的标识。如果没有,说明激活命令没起作用:- 旧版Anaconda在Windows上可能需要用
conda activate py35而不是activate py35(虽然你用的是Anaconda2.3.0,activate应该也支持,但可以试试完整命令); - 如果是PowerShell窗口,需要先执行
conda init powershell配置一下,再重新打开窗口激活环境。
- 旧版Anaconda在Windows上可能需要用
直接验证环境内的Python版本
找到你的Anaconda安装目录下的envs\py35文件夹,比如默认路径可能是C:\Users\你的用户名\Anaconda2\envs\py35,直接运行该目录下的python.exe,然后输入import sys; print(sys.version),看看是不是3.5版本。如果这里是对的,说明问题出在CMD的PATH配置上。检查系统环境变量的PATH优先级
激活环境后,在CMD里输入echo %PATH%,查看输出的路径列表,确认C:\Users\你的用户名\Anaconda2\envs\py35和C:\Users\你的用户名\Anaconda2\envs\py35\Scripts这两个路径是不是排在最前面。如果旧的Anaconda主环境路径(比如C:\Users\你的用户名\Anaconda2)排在它们前面,就会优先调用旧版本的Python。这种情况下,你可以:- 暂时手动调整PATH顺序,把py35的路径移到最前面;
- 或者重新激活环境,确保conda正确修改了当前会话的PATH。
重建py35环境
如果以上步骤都没用,可能是环境创建过程中出了问题,试试删除旧环境再重建:conda remove --name py35 --all conda create --name py35 python=3.5 conda activate py35 python --version更新基础环境的conda版本
你的基础Anaconda版本比较旧,对应的conda版本可能存在激活逻辑的小bug。先回到基础环境(输入deactivate),然后执行:conda update conda更新完成后再重新创建并激活py35环境试试。
内容的提问来源于stack exchange,提问作者Ehsan Tabatabaei

