`pip list` 和 anaconda 包列表中的 Keras 但无法导入

Keras in `pip list` and anaconda package list but cannot import

我正在使用 anaconda 4.4.0 和 Python 3.6.2。首先,我 pip 安装了 Keras,它显示在 pip listconda list 以及 Anaconda 的 environment>root>packages 中。但是当我在 Anaconda 或终端中使用 import keras 时,我得到

Traceback (most recent call last): ... ModuleNotFoundError: No module named 'keras'

我也尝试用 anaconda 安装 Keras,我得到了相同的 ModuleNotFoundError

我也试过卸载它,然后从 github 下载 master 分支并使用 python setup.py install 安装。该包再次出现在列表中,但我无法导入它。

更新:

我已经多次卸载包并使用 Keras package in pypi 安装,现在我可以在终端的 python 中导入包。但我仍然无法在 jupyter notebook 中导入。

值得一提的是,我正在使用 MacOS Sierra 10。

使用python -m pip install keras

然后,使用python shell检查安装。

试试这个代码:

conda install -c deeplearn keras

基本上,您可以在这里找到完整的答案:

但是,在我看来,您在终端中使用了不同的 python。 在终端中检查此命令:

which python 

应该return像这样:

/Users/***/anaconda3/bin/python

如果您可以在 shell 中导入但不能在笔记本中导入,根据 gnestor 对 this question 的回答,您的 python 可能使用不同的可执行文件。 运行:

import sys
sys.executable

在 shell 和笔记本中。如果目录不同,则必须更改笔记本的内核规范。这可能是通过安装 Tensorflow 或其他更改环境和内核规范的软件包而发生的。您可以使用以下命令找到 kernelspec 目录:

from jupyter_core.paths import jupyter_data_dir
print(jupyter_data_dir())

在该目录中,您会找到一个 JSON 文件。打开它并将路径更改为您的工作 python 目录。 (which python 中的工作 python 目录)

尝试 运行:

conda install jupyter
conda install tensorflow
pip install Keras

您的 conda 环境已激活。不要问我为什么 - Anaconda 的行为让我感到困惑。 (我已经用这些创建了一个 .yml 脚本,但我似乎仍然需要执行此步骤)