При создании новой среды conda с Python 3.6 у PyQt5 (pyqt == 5.6.0) возникли проблемы с инициализацией из PyCharm версии 2019.1.
После ssh -Y
в поле, построение графиков из оболочки iPython работало нормально.
Но импорт matplotlib
из PyCharm выдал следующую ошибку:
import matplotlib.pyplot as plt
Traceback (most recent call last):
File "/share/dir/python/conda-env-py36/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 3296, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-3-a0d2faabd9e9>", line 1, in <module>
import matplotlib.pyplot as plt
File "/home/user/.pycharm_helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 20, in do_import
module = self._system_import(name, *args, **kwargs)
File "/share/dir/python/conda-env-py36/lib/python3.6/site-packages/matplotlib/pyplot.py", line 2609, in <module>
install_repl_displayhook()
File "/share/dir/python/conda-env-py36/lib/python3.6/site-packages/matplotlib/pyplot.py", line 166, in install_repl_displayhook
ip.enable_gui(ipython_gui_name)
File "/home/user/.pycharm_helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 130, in enable_gui
return real_enable_gui(gui, app)
File "/home/user/.pycharm_helpers/pydev/pydev_ipython/inputhook.py", line 536, in enable_gui
return gui_hook(app)
File "/home/user/.pycharm_helpers/pydev/pydev_ipython/inputhook.py", line 174, in enable_qt
from pydev_ipython.qt_for_kernel import QT_API, QT_API_PYQT5
File "/home/user/.pycharm_helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 20, in do_import
module = self._system_import(name, *args, **kwargs)
File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_for_kernel.py", line 115, in <module>
QtCore, QtGui, QtSvg, QT_API = load_qt(api_opts)
File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_loaders.py", line 258, in load_qt
if not can_import(api):
File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_loaders.py", line 146, in can_import
if not has_binding(api):
File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_loaders.py", line 114, in has_binding
imp.find_module('QtCore', mod.__path__)
File "/share/dir/python/conda-env-py36/lib/python3.6/imp.py", line 270, in find_module
"not {}".format(type(path)))
RuntimeError: 'path' must be None or a list, not <class '_frozen_importlib_external._NamespacePath'>
Следуя трассировке стека и изучая соответствующие файлы, я понимаю, что это как-то связано с установкой conda или распознаванием пакетов PyCharm пакетов внутри enda conda.
Кто-нибудь еще испытывал проблемы с запуском PyQt5 с помощью Matplotlib 2.2.2 из PyCharm?