Python没有在Anaconda下找到Tensorflow模块

时间:2018-04-01 18:28:58

标签: python tensorflow visual-studio-code anaconda

我是新手试图在Windows 10本地执行first_steps_with_tensor_flow.ipynb中的代码。我已经安装了Anaconda Navigator 1.8.2,创建了我已经安装的环境,其中包括{{ 1}}包。然后我从Anaconda启动Visual Studio Code并运行

tensorflow

最后一行在VS Code中标记为红色,表示 E0401:无法导入' tensorflow.python.data' 。运行,我得到 ModuleNotFoundError:没有名为' tensorflow' 的模块。但是,如果我将最后一行更改为import math from IPython import display from matplotlib import cm from matplotlib import gridspec from matplotlib import pyplot as plt import numpy as np import pandas as pd from sklearn import metrics import tensorflow as tf from tensorflow.python.data import Dataset ,我会得到print (tf.__version__)作为输出,所以显然安装了Tensorflow。奇怪的是,VS代码抱怨1.2.1,但该行有效。

我在这里做错了什么?

4 个答案:

答案 0 :(得分:3)

您使用的是Visual Studio Code(VSC)还是仅使用pylint?我发现了这种情况发生的原因。

对于VSC,python扩展,使用pylint进行python的intellisense。 Pylint似乎有子模块的错误。 对我来说,错误仅在VSC中显示,而不在提示中显示。

我通过执行以下步骤解决了这个问题:

  

点击“代码” - >点击“偏好设置” - >点击“设置”

现在,在设置中,您有一个搜索栏,搜索:

  

python.linting.pylintEnable并将其设为false

现在有替代的linting,我在这里使用pep8作为例子,因为它附带anaconda,搜索这个

  

python.linting.pep8Enabled并将其设为true

现在pylint不再是默认的linter,我们现在正在使用pep8。 只是为了确保,退出VSC并重新打开它。不应再出现任何错误。

我很确定这是pylint的问题,而不是你安装的TF。默认情况下,VSC中的Microsoft python扩展使用pylint作为linting工具。通过将其更改为pep8或其他,我们可以避免错误。

答案 1 :(得分:2)

Tensorflow目前是1.7.0版本,您已安装1.2.1版本。在查看了tensorflow repository之后,tensorflow.python.data首先在1.4.0-rc0中使用,之前它在contrib中。

我建议升级到当前版本并重试。或者在版本1.2.1中查找正确的路径。

答案 2 :(得分:1)

未安装 Pylint 供 VS 使用。 我通过搜索(在 VS 中)lint 找到了这个,灵感来自上面的 Haomin。 出现了一个消息框,第一个建议是安装 pylint。 “pip安装pylint”。 我点击了这个,一切都奏效了! 这花了很长时间才找到。

答案 3 :(得分:-2)

使用tf而不是tensorflow。 您已将张量流导入为tf,而不是tensorflow

import math
from IPython import display
from matplotlib import cm
from matplotlib import gridspec
from matplotlib import pyplot as plt
import numpy as np
import pandas as pd
from sklearn import metrics
import tensorflow as tf
from tf.python.data import Dataset