安装Keras破坏了Conda虚拟环境(Windows 10)

时间:2018-11-26 00:18:47

标签: python tensorflow keras anaconda virtualenv

我试图在我的python 3.7环境上安装Keras,然后我注意到tensorflow和keras都不支持python 3.7,它们都支持3.6
然后我使用conda / anaconda用python 3.6创建了一个新的虚拟环境。
通过输入以下内容,我可以激活此虚拟环境 在activate deeplearning中输入cmd,然后输入python进入python shell。
我使用conda install -c conda-forge keras安装了Keras及其依赖项,看来还可以输入由keras等导入的python shell图书馆与图书馆纠缠不清,它们按预期工作。
我关闭了窗口,然后再次尝试是否可以自己手动打开虚拟环境。
键入activate deeplearning,然后遇到了这个问题( Screenshot
我只在cmd屏幕截图上输入了activate deeplearning部分。
这里的问题是我无法进入虚拟环境,我得到了这个命令?在cmd上,然后它自己关闭。我无法进入虚拟环境,因此无法安装新库。但是我可以从安装此环境的位置进入python shell。
但是文件夹中没有.bat文件,因此我也无法从那里激活虚拟环境。
我不知道该怎么办,如果有人可以提供帮助,我将非常感谢。

3 个答案:

答案 0 :(得分:1)

看来,用于激活keras的脚本正在过早退出。原因之一可能是未在python 3.6中设置环境。

尝试使用以下命令创建虚拟环境:

  

conda create --name deeplearning python = 3.6

然后您可以按照以下指示操作: http://inmachineswetrust.com/posts/deep-learning-setup/

注意:在安装keras时,请使用命令:

  

conda安装keras

答案 1 :(得分:0)

我通过Python 2.7修复了此问题,方法是通过Anaconda Navigator删除名称为vs2008_win-32的项,从而修复了我的环境。

答案 2 :(得分:0)

在我的系统上,该错误是由另一个可能同时安装的激活脚本引起的。要确认是否适合您,请查看启动时动态生成的批处理文件。要找出其名称,请按以下方式更改_conda_activate.bat

...

:FIXUP43
@FOR /F "delims=" %%i IN ('@CALL "%CONDA_EXE%" shell.cmd.exe %*') DO @SET "_TEMP_SCRIPT_PATH=%%i"
@IF "%_TEMP_SCRIPT_PATH%"=="" @EXIT /B 1
@IF NOT "%CONDA_PROMPT_MODIFIER%" == "" @CALL SET "PROMPT=%%PROMPT:%CONDA_PROMPT_MODIFIER%=%_empty_not_set_%%%"

:: Add these lines:
set _TEMP_SCRIPT_PATH
pause

@CALL "%_TEMP_SCRIPT_PATH%"
...

在临时脚本中注释掉其他脚本的调用 直到找到罪魁祸首。对我来说,这与vs2015有关。

@SET "PYTHONIOENCODING=1252"
@CALL "C:\Users\x030551\AppData\Local\Continuum\miniconda3\etc\conda\activate.d\keras_activate.bat"
:: @CALL "C:\Users\x030551\AppData\Local\Continuum\miniconda3\etc\conda\activate.d\vs2015_compiler_vars.bat"

一旦我掌握了这些信息,Google就会将我指向this issue。解决方案在很大程度上取决于您的环境,无法在此处发布。