升级的python,导入的库不再有效

时间:2018-05-26 05:10:53

标签: python python-3.6 python-import

我刚刚使用here找到的说明从Python 3.5.2升级到3.6.5。他们工作了,我现在在我的系统上安装了python 3.6。但是,当我尝试使用导入的库执行任何python脚本时,我收到此错误:

Traceback (most recent call last):
  File "main.py", line 8, in <module>
    from kclass import kNearestNeighbour, euclideanDistance, getFeatureDistance
  File "/home/raovinnakota/Desktop/BioInformatics/Final_Project/kclass.py", line 10, in <module>
    from matplotlib import pyplot
ModuleNotFoundError: No module named 'matplotlib'

我使用pip3再次安装matplotlib以确保,但它说已经安装了matplotlib。所有其他导入的库也会发生同样的错误。

编辑:经过几个小时的挖掘,以及下面的有用评论,我发现为什么这不起作用的原因是我没有pip3.6来对应python3 .6,这是因为没有正确安装python 3.6。我发现this,这是迄今为止从16.04更新为python 3.6的最佳分步方法。再次感谢所有回复的人,非常感谢。

2 个答案:

答案 0 :(得分:1)

使用python -m pip代替pip3,确保为python安装软件包。

确保您的python启动新版本,或使用-m pip加上Python 2.7.15rc1 (default, Apr 15 2018, 21:51:34) [GCC 7.3.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> sys.path ['', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/home/brendan/.local/lib/python2.7/site-packages', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/gtk-2.0'] >>> import backports >>> backports.__path__ ['/usr/local/lib/python2.7/dist-packages/backports'] 的任何命令。

答案 1 :(得分:0)

由于您已将python版本从3.5更改为3.6,因此需要卸载某些库,然后再重新安装。此外,您没有卸载旧库,因此错误是正确的,并且您已经有错误的库。我认为没有必要升级pip版本,但如果这不起作用,请尝试升级你的pip版本,然后重新安装库。