在python3中pyqt5和mayavi不兼容问题的解决方法
Python  /  管理员 发布于 7年前   225
环境:
win10 64bit & Linux Mint 18.2
WinPython3.6.1,spyder,qtconsole
iep3.7
问题描述:
通过http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyside下载mayavi,pyqt4,vtk等包安装后执行mayavi代码不会出现问题,突然想学pyqt5,就
pip3 install pyqt5
安装了,安装之后重新运行mayavi代码便会出错
错误提示:
RuntimeError: Invalid Qt API 'pyqt5', valid values are: 'pyqt' or 'pyside'
我在根据网上的答案操作的时候还出现了下面的错误,但是已经忘了错误是怎么来的了
>ImportError: Could not import backend for traitsMake sure that you have either the TraitsBackendWx or the TraitsBackendQtprojects installed. If you installed Mayavi with easy_install, tryeasy_install <pkg_name>. easy_install Mayavi[app] will also work.If you performed a source checkout, be sure to run 'python setup.py install'in Traits, TraitsGUI, and the Traits backend of your choice.Also make sure that either wxPython or PyQT is installed.wxPython: http://www.wxpython.org/PyQT: http://www.riverbankcomputing.co.uk/software/pyqt/intro
解决办法
下面我直说在qtconsole,spyder和iep3.7下成功解决的办法,
首先安装pyside,whl安装文件在上面链接下载,安装完后将pysided目录添加到系统环境变量,比如我的在
D:\Applications\WinPython-64bit-3.6.1.0Zero\python-3.6.1.amd64\Lib\site-packages\PySide
(1) qtconsole
import osos.environ['QT_API']='pyside'%gui qt4
网上找到的一个答案是将QT_API修改成pyqt,但我自己试了不行,最后是使用pyside解决的
(2) spyder
在涉及到mayavi的代码中最开始添加
import osos.environ['QT_API']='pyside'
添加完之后spyder运行还是会出错,要修改ipython的backend,设置那里把bakend修改成Tkinter,我试过修改成Qt4会出现ipython内核启动不了,如图
更简单的方法就是设置ipython启动那里,添加上面的代码,如下图,但是要注意迁移到其他平台下要稍作修改。
(3) iep3.7
每段代码前加入
import osos.environ['QT_API']='pyside'
修改shell配置,将gui选择tk,如图
2017/08/10更新
在linux下也进行类似的操作,以linux mint18.2 为例,进入新立得软件管理器,搜索python3-pyside 进行安装,注意,如果直接pip3安装会提示
only these python versions are supported: [(2, 6), (2, 7), (3, 2), (3, 3), (3, 4)]
或者通过apt-get 安装
apt-get install python3-pyside
我在linux下也使用spyder,参照上面的配置即可.
每段代码前加入
import osos.environ['QT_API']='pyside'
然后设置IPython的backend后端为Tkinter
以上这篇在python3中pyqt5和mayavi不兼容问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号