【问题标题】:conda activate on powershellconda 在 powershell 上激活
【发布时间】:2026-02-09 17:15:02
【问题描述】:

全新安装 conda。我正在尝试激活一个环境(任何环境),我得到以下信息

(base) PS C:\Users\AndrewBergan> conda activate test123

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\cli\main.py", line 138, in main
        return activator_main()
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\activate.py", line 940, in main
        print(activator.execute(), end='')
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\activate.py", line 173, in execute
        return getattr(self, self.command)()
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\activate.py", line 150, in activate
        builder_result = self.build_activate(self.env_name_or_prefix)
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\activate.py", line 275, in build_activate
        return self._build_activate_stack(env_name_or_prefix, False)
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\activate.py", line 332, in _build_activate_stack
        self._replace_prefix_in_path(old_conda_prefix, prefix))
      File "C:\Users\AndrewBergan\AppData\Local\Continuum\anaconda3\lib\site-packages\conda\activate.py", line 550, in _replace_prefix_in_path
        assert last_idx is not None
    AssertionError

我做错了什么?

【问题讨论】:

标签: powershell anaconda


【解决方案1】:

结果由于某种原因Continuum/anaconda3/Library/bin 没有被添加到我的路径中。添加这个解决了这个问题。

编辑: 如以下评论中所述,可能需要对您的路径进行其他修改。通过向 activate.py 添加几个打印语句并比较 conda bash 窗口和 powershell 的输出,我能够确定我的路径中缺少什么。

【讨论】:

  • 我遇到了同样的问题,如果您的回答对我没有用,这条路径可以:Continuum/anaconda3/bin 您可以编辑您的答案并为其他用户建议该路径吗?谢谢。
【解决方案2】:

您可以使用以下代码更新 conda

conda update -n base conda

因为 conda 4.6.14 修复了这个问题。

【讨论】:

    【解决方案3】:

    conda 从 4.6 版开始支持 Powershell。升级你的 conda,然后运行这个:

    conda init
    

    那你应该没事。

    【讨论】: