很扯淡的一个错误,大体原因是在tensorflow环境下自身安装了numpy之后,
在安装所需要的库诸如matplotlib,tensorboard,scikit-learn时,重新安装了更低版本的numpy.
比如笔者现在所用的是numpy==1.16.3,但是系统多次重复安装numpy==1.13.1,每次安装完,在import tensorflow时都会出现标题错误-- numpy.core.umath failed to import. 原因可能时numpy版本重复,在高版本tensorflow下调用低版本numpy报错。
解决方法如下:
1. 在tensorflow环境下命令行输入
-pip uninstall numpy==1.13.1/-conda remove numpy==1.13.1。
笔者之前用pip命令成功解决问题,这一次用的conda,发现删除成功了一部分,但在“E:\Anaconda\envs\tensorflow\Lib\site-packages”中依然可见numpy-1.13.1文件夹,感觉是没删干净。而再次用pip和conda删除命令时,多次提醒笔者需要移除更多required-by的库比如上面提到的matplotlib,tensorboard,sklearn等等... 没敢轻举妄动。
2.暴力删除法,直接在上述文件夹里把numpy/numpy-1.16.3/numpy-1.13.1 三个文件夹全部删除,再重新安装numpy。 -pip install -u numpy。问题解决