【问题标题】:RuntimeError: the sip module implements API v11.0 to v11.2 but the PyQt5.QtCore module requires API v11.3RuntimeError: sip 模块实现 API v11.0 到 v11.2 但 PyQt5.QtCore 模块需要 API v11.3
【发布时间】:2017-03-02 17:51:28
【问题描述】:

我最近在我的系统上安装了 PyQt4 并开始执行一些基本任务(课程作业),它运行良好。

然后,几天后,我尝试使用matplotlib

当我尝试import matplotlib.pyplot as plt 时,我收到以下错误:

Traceback (most recent call last):
  File "C:\Users\user\Desktop\Confusion.py", line 1, in <module>
    import matplotlib.pyplot as plt
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\pyplot.py", line 114, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\backends\__init__.py", line 32, in pylab_setup
    globals(),locals(),[backend_name],0)
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\backends\backend_qt5agg.py", line 16, in <module>
    from .backend_qt5 import QtCore
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\backends\backend_qt5.py", line 27, in <module>
    import matplotlib.backends.qt_editor.figureoptions as figureoptions
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\backends\qt_editor\figureoptions.py", line 17, in <module>
    import matplotlib.backends.qt_editor.formlayout as formlayout
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\backends\qt_editor\formlayout.py", line 58, in <module>
    from matplotlib.backends.qt_compat import QtGui, QtWidgets, QtCore
  File "C:\Program Files\Anaconda3\lib\site-packages\matplotlib\backends\qt_compat.py", line 127, in <module>
    from PyQt5 import QtCore, QtGui, QtWidgets
RuntimeError: the sip module implements API v11.0 to v11.2 but the PyQt5.QtCore module requires API v11.3
[Finished in 1.9s]

我认为问题出在PyQt4 的安装上,而我已经安装了PyQt5,但thiswebsite 说它们可以毫无问题地一起正常工作,前提是sip 的版本相同两者都有。

问题似乎来自sip

我按照这里给出的步骤操作:PyQt5 - SIP API 10 level error. API 11 required

  1. 当我运行import sip 然后 print(sip, sip.SIP_VERSION_STR)

    我得到以下信息: 4.16.9

  2. 然后当我在命令提示符下运行sip -V,我得到4.18

我清楚地看到sip 模块中有。

我只想问,我该如何解决这个问题?

我在 Windows 8 64 位系统上,使用 Anaconda3

感谢任何帮助。 :)

【问题讨论】:

    标签: python matplotlib anaconda pyqt5 python-sip


    【解决方案1】:

    通过执行pip install pyqt5 解决了问题,sip 版本变得相同。

    我关注了这个网站:PyQt Sourceforge

    我希望这会有所帮助。

    【讨论】:

    • Ehi Pragyaditya! pip install pyqt5 对我不起作用。你能想象为什么吗?我有 python 2.7.11
    • 你能发布确切的错误信息吗?并考虑提出一个新问题;在这里通知我。我会尽力回答的。
    【解决方案2】:

    我遇到了同样的问题,通过 conda 升级 sip 对我有用:

    conda upgrade sip
    

    【讨论】:

      【解决方案3】:

      我也有同样的问题。我通过以下方式临时修复了它: 在import matplotlib.pyplot as plt 之前尝试import PyQt4import PyQt5

      【讨论】:

        【解决方案4】:

        您还必须更新PyQt5-sip 包:

        pip install PyQt5-sip --upgrade
        

        【讨论】:

        • 这行得通! :)
        猜你喜欢
        • 2017-02-24
        • 2012-03-09
        • 1970-01-01
        • 1970-01-01
        • 2014-04-30
        • 1970-01-01
        • 2019-07-31
        • 1970-01-01
        • 2013-03-20
        相关资源
        最近更新 更多