在python3中pyqt5和mayavi不兼容问题的解决方法


Posted in Python onJanuary 08, 2019

环境:

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 traits

Make sure that you have either the TraitsBackendWx or the TraitsBackendQt
projects installed. If you installed Mayavi with easy_install, try
easy_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 os
os.environ['QT_API']='pyside'
%gui qt4

网上找到的一个答案是将QT_API修改成pyqt,但我自己试了不行,最后是使用pyside解决的

(2) spyder

在涉及到mayavi的代码中最开始添加

import os
os.environ['QT_API']='pyside'

添加完之后spyder运行还是会出错,要修改ipython的backend,设置那里把bakend修改成Tkinter,我试过修改成Qt4会出现ipython内核启动不了,如图

在python3中pyqt5和mayavi不兼容问题的解决方法

更简单的方法就是设置ipython启动那里,添加上面的代码,如下图,但是要注意迁移到其他平台下要稍作修改。

在python3中pyqt5和mayavi不兼容问题的解决方法

(3) iep3.7

每段代码前加入

import os
os.environ['QT_API']='pyside'

修改shell配置,将gui选择tk,如图

在python3中pyqt5和mayavi不兼容问题的解决方法

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 os
os.environ['QT_API']='pyside'

然后设置IPython的backend后端为Tkinter

以上这篇在python3中pyqt5和mayavi不兼容问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python写的一个文本编辑器
Jan 23 Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 Python
python 异或加密字符串的实例
Oct 14 Python
python中bs4.BeautifulSoup的基本用法
Jul 27 Python
Python占用的内存优化教程
Jul 28 Python
TensorFlow查看输入节点和输出节点名称方式
Jan 04 Python
使用Keras 实现查看model weights .h5 文件的内容
Jun 09 Python
python爬虫可以爬什么
Jun 16 Python
基于keras中的回调函数用法说明
Jun 17 Python
django template实现定义临时变量,自定义赋值、自增实例
Jul 12 Python
python3.6中anaconda安装sklearn踩坑实录
Jul 28 Python
python实现canny边缘检测
Sep 14 Python
Django之模型层多表操作的实现
Jan 08 #Python
对python mayavi三维绘图的实现详解
Jan 08 #Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
Jan 08 #Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
Jan 08 #Python
Python OpenCV对本地视频文件进行分帧保存的实例
Jan 08 #Python
python-opencv 将连续图片写成视频格式的方法
Jan 08 #Python
对Python+opencv将图片生成视频的实例详解
Jan 08 #Python
You might like
环境会对咖啡种植有什么影响
2021/03/03 咖啡文化
用PHP动态生成虚拟现实VRML网页
2006/10/09 PHP
php中使用explode查找某个字符是否存在的方法
2011/07/12 PHP
php单例模式实现方法分析
2015/03/14 PHP
PhpStorm2020 + phpstudyV8 +XDebug的教程详解
2020/09/17 PHP
javascript iframe中打开文件,并检测iframe存在否
2008/12/28 Javascript
一行代码告别document.getElementById
2012/06/01 Javascript
利用webqq协议使用python登录qq发消息源码参考
2013/04/08 Javascript
JavaScript中json使用自己总结
2013/08/13 Javascript
Knockout数组(observable)使用详解示例
2013/11/15 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
每天一篇javascript学习小结(RegExp对象)
2015/11/17 Javascript
学习JavaScript设计模式(单例模式)
2015/11/26 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
vue中el-upload上传图片到七牛的示例代码
2018/10/19 Javascript
Vue 实现创建全局组件,并且使用Vue.use() 载入方式
2020/08/11 Javascript
Vue按时间段查询数据组件使用详解
2020/08/21 Javascript
python读取oracle函数返回值
2016/07/18 Python
详解Python3操作Mongodb简明易懂教程
2017/05/25 Python
Flask之flask-script模块使用
2018/07/26 Python
如何在Python中实现goto语句的方法
2019/05/18 Python
python实现自动化上线脚本的示例
2019/07/01 Python
Python 获取ftp服务器文件时间的方法
2019/07/02 Python
Django CSRF认证的几种解决方案
2020/03/03 Python
Django ORM实现按天获取数据去重求和例子
2020/05/18 Python
使用keras实现Precise, Recall, F1-socre方式
2020/06/15 Python
浅谈Python __init__.py的作用
2020/10/28 Python
香港时尚女装购物网站:ZAFUL
2017/07/19 全球购物
毕业生个人的求职信范文
2013/12/03 职场文书
20岁生日感言
2014/01/13 职场文书
个人授权委托书样本
2014/09/13 职场文书
2015年安全生产目标责任书
2015/01/29 职场文书
护士个人年度总结范文
2015/02/13 职场文书
《揠苗助长》教学反思
2016/02/20 职场文书
《中彩那天》教学反思
2016/02/24 职场文书
详细谈谈JavaScript中循环之间的差异
2021/08/23 Javascript