Conda 未在 Power Shell 中激活

问题描述 投票:0回答:3

我已经在我的 Windows 10 笔记本电脑上安装了 anaconda。我正在尝试激活名为

pyenv
的 Python 环境。

首先,我检查笔记本电脑中的

conda env list
,这是电源外壳上的输出:

PS C:\Users\User> conda env list
# conda environments:
#
base                  *  C:\Users\User\Anaconda3
pyenv                    C:\Users\User\Anaconda3\envs\pyenv

然后我激活

pyenv
:

PS C:\Users\User> conda activate pyenv

但我再次检查,它仍然激活

base
环境:

PS C:\Users\User> conda env list
# conda environments:
#
base                  *  C:\Users\User\Anaconda3
pyenv                    C:\Users\User\Anaconda3\envs\pyenv

当我使用Anaconda提示符时,它工作正常:

(base) C:\Users\User>conda activate pyenv

(pyenv) C:\Users\User>

有谁知道为什么会导致这个问题以及如何解决这个问题?

更新:

跑步

conda init powershell
:

PS C:\Users\User> conda init powershell
no change     C:\Users\User\Anaconda3\Scripts\conda.exe
no change     C:\Users\User\Anaconda3\Scripts\conda-script.py
no change     C:\Users\User\Anaconda3\Scripts\conda-env-script.py
no change     C:\Users\User\Anaconda3\condabin\conda.bat
no change     C:\Users\User\Anaconda3\Library\bin\conda.bat
no change     C:\Users\User\Anaconda3\condabin\_conda_activate.bat
no change     C:\Users\User\Anaconda3\condabin\rename_tmp.bat
no change     C:\Users\User\Anaconda3\condabin\conda_hook.bat
no change     C:\Users\User\Anaconda3\Scripts\activate.bat
no change     C:\Users\User\Anaconda3\condabin\activate.bat
no change     C:\Users\User\Anaconda3\condabin\deactivate.bat
modified      C:\Users\User\Anaconda3\etc\profile.d\conda.sh
modified      C:\Users\User\Anaconda3\etc\fish\conf.d\conda.fish
no change     C:\Users\User\Anaconda3\shell\condabin\Conda.psm1
modified      C:\Users\User\Anaconda3\shell\condabin\conda-hook.ps1
no change     C:\Users\User\Anaconda3\Lib\site-packages\xontrib\conda.xsh
modified      C:\Users\User\Anaconda3\etc\profile.d\conda.csh
modified      C:\Users\User\Documents\WindowsPowerShell\profile.ps1

更新2: 使用 CMD 时有效:

C:\Users\User>conda activate pyenv

(pyenv) C:\Users\User>
python powershell anaconda
3个回答
21
投票

过了一段时间,我的Powershell打开时出现这个错误。

. : File C:\Users\User\Documents\WindowsPowerShell\profile.ps1 cannot be loaded because running scripts is
    disabled on this system. For more information, see about_Execution_Policies at
    https:/go.microsoft.com/fwlink/?LinkID=135170.
    At line:1 char:3
    + . 'C:\Users\BinoyGhosh\Documents\WindowsPowerShell\profile.ps1'
    +   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : SecurityError: (:) [], PSSecurityException
        + FullyQualifiedErrorId : UnauthorizedAccess

然后我找到了这个解决方案

  • 以管理员身份运行 Powershell
  • 运行此行
    set-executionpolicy remotesigned
  • 关闭终端

然后就可以了。

enter image description here


1
投票

上述解决方案对我来说并不完全有效。我不得不另外跑:

conda init powershell

重启powershell后,就可以运行了:

conda activate myenv

成功了。


0
投票

这个方法对我有用。 运行 PowerShell 并运行命令以在文本编辑器中打开配置文件:

notepad $PROFILE

在打开的配置文件中,从新行添加此文本

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
(& "C:\Users\ivans\anaconda3\shell\condabin\conda-hook.ps1") | Out-Null
# <<< conda initialize <<<

保存文件并重新启动终端

© www.soinside.com 2019 - 2024. All rights reserved.