工作需求原因,拿到一台新电脑,首先需要安装 python 。一般地,我用 conda 管理自己的 python 环境。
Anaconda Prompt
使用 conda 管理环境,大多需要用到命令行。使用 Anaconda 自带的 Anaconda Prompt
虽然没什么问题,但终究没有集成到自己的命令行工具中,对我而言,多开命令行很麻烦。
一般,我会把所有命令行工具集成到 powershell
中,软件用 Windows Terminal
。这里遇到了 bug 。
问题描述
安装了 Anaconda 。输入
conda activate <环境名称>
命令后,并没有切换环境。也没有报错。
即,无法用 powershell 激活 conda 环境 。
但是用 Anaconda Prompt
就可以,如下图。
Anaconda Prompt
如上,在输入 conda activate avatarify
后,环境变为了 avatarify
。
问题分析
输入 conda
后没有报错,说明:
•Anaconda 在安装时,已经自动地将其自带的二进制文件/可执行文件路径
放到了系统变量的Path
中, conda 没有问题•因此,推断是 powershell 内部原因,没有与 conda 集成。我们无法探究内部到底发生了什么,只能去互联网检索相关信息•检索关键词:powershell
、无法激活
、conda
、anaconda
、无效
、切换环境
解决方案
在以下两个参考资料里找到了解决方案:
•https://www.zhihu.com/question/58573630/answer/260532828•https://stackoverflow.com/questions/47800794/how-to-activate-different-anaconda-environment-from-powershell/54811138#54811138
第二份资料更有用
在 powershell 中输入:
代码语言:javascript复制conda init powershell
问题解决。
我的 powershell
如上图,修复后,出现环境的标识。并且,也要比自带命令行美观很多。
我的 powershell 配置:https://github.com/PiperLiu/OS-rc-profiles
思考与拓展
出现问题,主要是因为我们通常只是把 conda 作为一种工具,而不是先系统地学习。
其实,在 conda 自带的说明中,有相关的命令。
peace.