解决PySide2的This application failed to start because no Qt platform plugin could be initialized问题
文章来源:https://www.cnblogs.com/IaCorse/p/12024428.html
解决PySide2的This application failed to start because no Qt platform plugin could be initialized问题
今天在装pyside2的时候心路历程可谓是十分艰辛了,好在最后都解决了。
首先是pip install时一直retrying的问题,与之同时发生的还有win10的手动设置代理一直打开,经过一系列搜索解决方法无果,最后我想起来之前使用ssr时因为代理没有效果删除了,删除前的一系列设置可能对这个有一定的影响,然后就又下载了回来,搞定了代理后pip就完全ok了。
之后就是标题所写的pyside2进行gui窗口编程时发生的错误了,同样经过了一系列的搜索折磨,最后在不停地吐槽国内博客转来转去找不到几个原创的答案之中,最后搜了下stackoverflow,然后就解决了。
总结一下思路:国内博客中通常是修改环境变量,这点是完全没问题的,但是由于国内博客大多写的是pyqt而不是pyside2,所以配置环境变量有所区别。
其实解决问题的方法也是配置环境变量,只不过路径不能只写到plugin,而要把platform也加入进去,当然也可以在每次编程时先加入这段代码再继续自己的代码:
import sys,os import PySide2 dirname = os.path.dirname(PySide2.__file__) plugin_path = os.path.join(dirname, 'plugins', 'platforms') os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path
如果想要一劳永逸,那么就多打一条print看一下pyside2安装目录:
import sys,os import PySide2 dirname = os.path.dirname(PySide2.__file__) plugin_path = os.path.join(dirname, 'plugins', 'platforms') os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path print(plugin_path)
把输出获得的路径复制一下(第二行):
然后在环境变量中配置一下就可以了:
但配置环境还是有可能不行,那么有一个办法是基本可行的,也就是改包根目录下的__init__文件,在注释前加上上面的那串代码就可以(注意要把PySide2去掉):
posted on 2019-12-27 20:58 破天荒的谎言、谈敷衍 阅读(7266) 评论(0) 编辑 收藏 举报