首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Pynsist和PyQt构建的GUI :导入错误'sip‘

用Pynsist和PyQt构建的GUI :导入错误'sip‘
EN

Stack Overflow用户
提问于 2018-03-12 11:23:49
回答 2查看 1.5K关注 0票数 1

我使用PyQt5构建了一个图形用户界面,并希望通过将其打包成pynsist,将其分发给其他没有安装Python的计算机。不幸的是,当启动安装程序产生的快捷方式时,GUI没有按预期打开,而且Python不断崩溃(即使安装了Python )。

控制台在崩溃时显示以下错误:

代码语言:javascript
复制
ModuleNotFoundError: No module named 'sip'.

这要归功于from PyQt5.QtCore import *

不幸的是,当在安装了.launch.py的计算机上启动Python脚本时,一切正常。我想这是因为它的目标是安装的版本,而不是GUI构建中包含的版本。但是,无论是否安装了Python,快捷键都不起作用,给出了上面的错误。

有什么想法吗?如何解决这个问题并使快捷方式在没有安装Python的计算机上工作?

提前谢谢你!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-12 12:45:21

当我第一次遇到这个问题时,我只是将sip.pyd添加到我的项目文件夹中。你可以在下面找到它:

代码语言:javascript
复制
x:/path-to-python/Lib/site-packages/sip.pyd

但真正解决我问题的是使用pyinstaller。它自动检测大多数依赖项,并且大部分时间运行时没有复杂的配置。

代码语言:javascript
复制
pip install pyinstaller
pyinstaller main.py 
# done
票数 3
EN

Stack Overflow用户

发布于 2018-03-13 09:21:09

Sip是一个单独包装,PyQt5需要它。您可以将它包括在应用程序中,方法是在pypi_wheels=中列出它,如在PyQt5实例

代码语言:javascript
复制
[Include]
packages=listapp
pypi_wheels= PyQt5==5.6
    sip==4.18

如果您使用的是最新版本的PyQt5 (5.10.1),那么最新版本的sip (4.19.8)应该可以使用它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49234011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档