ImportError: cannot import name

2018-12-25  本文已影响60人  曦宝
image.png
从图上运行可以看出来,是因为在import pandas的时候找不到isna了。
image.png
事情是这样的,我在网上找到的代码,我想先import一下,看有什么库没有安装,结果发现import了pandas,因为我之前就遇到过这样的问题,所以这次还是长了个心眼,啥代码都没有,我就先运行了一下。
就产生了开头截图里遇到的问题。找不到isna。
因为遇到了好几次了,所以决定解决一下,经过百度,看到了一个比较靠谱的回答。
https://github.com/hastic/hastic-server/issues/59

https://stackoverflow.com/questions/43809620/importerror-cannot-import-name-pandaserror

image.png

就是说,新版本和旧版本的pandas有差异,要把版本降级一下子。
于是我先查看了一下我自己的当前版本。


image.png

于是我按照他说的办法将pandas退到了0.19.2版本,但是我这里提示因为我安装了featuretools库,提示我featuretools库依赖的pandas的版本最低是0.20.3,于是在版本切换的过程中,停留在了0.20.3版本。

此时我想起来之前遇到这个问题我的做法,我就是把import pandas的部分删除了,然后在提示报错的部分重新双击选中alt + enter了一下(也就是pycharm的自动引包,版本升级,这个方法没有丢失,只是移动到了别处,如果这个办法失效,在网上再百度高版本的替代方法就可以了)。

-------------------------------------分割线-----------------------------------
------------------------------------------如果你是为了解决题目上的问题来的,至此你应该可以解决你的问题了,下面就没必要看了---------------------------
于是我把这个ImportError: cannot import name 'isna'错误,先放在那里,(我又将pandas升级到了最高版本了,原谅我的强迫症)但是又出现了另一个问题。


image.png

我这里其实是安装了tensorflow的,初步判断原因是python环境的问题,我的电脑里安装了两个python版本3.5和3.6,编程的时候默认是3.6,但是tensorflow目前仅支持3.5,所以,切换一下应该就好了。
切换好了,运行又找不到pandas了,python3.5和python3.6是两套完全不同的系统python3.5支持的pandas最高就是0.20.3,所以又重新安装了对应的pandas,在anaconda里面选择环境里安装的。
然后运行,keras库又找不到了,有安装了一下。
终于运行成功了。


image.png
上一篇下一篇

猜你喜欢

热点阅读