Pyinstaller打包PyQt5出现No module named 'PyQt5.sip'问题解决!!!

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/La_vie_est_belle/article/details/82346355

解决办法很简单,直接在你的源码中导入PyQt5.sip,然后重新打包即可(当然前提是你已经安装了该包,没有的话就pip install PyQt5.sip)。 

针对日后出现的ModuleNotFoundError,请记住一句话,缺什么模块,你就在源码中导入什么模块。

import sys
import PyQt5.sip  # 直接在源码中导入PyQt5.sip包即可
from PyQt5.QtCore import pyqtSignal                             
from PyQt5.QtWidgets import QApplication, QWidget, QLabel


class Demo(QWidget):
    my_signal = pyqtSignal()

    def __init__(self):
        super(Demo, self).__init__()
        self.label = QLabel('Hello World', self)
        self.my_signal.connect(self.change_text)

    def change_text(self):
        if self.label.text() == 'Hello World':
            self.label.setText('Hello PyQt5')
        else:
            self.label.setText('Hello World')

    def mousePressEvent(self, QMouseEvent):
        self.my_signal.emit()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    demo = Demo()
    demo.show()
    sys.exit(app.exec_())

--------------------------------------------------------------------------------------------------

额新建了一个Python交流群,大家感兴趣的话可以加入一起学习:820934083

猜你喜欢

转载自blog.csdn.net/La_vie_est_belle/article/details/82346355
今日推荐