web-dev-qa-db-ja.com

"pyinstaller <scriptname.py>"と "typeError:整数が必要です(Bytesの入力)"を使用しようとしました。

Pythonによって1つの実行ファイルとして単純なはい/いいえのメッセージボックスを作成したいです。 PYQT5を使用して、pyinstaller.gotとErrorで要求できるファイルを作成しました

_TypeError: an integer is required (got type bytes).
_

コマンド_pyinstaller <scriptname.py>_を使用した後

_import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox , QDesktopWidget
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import pyqtSlot

class App(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def center(self):
        # geometry of the main window
        qr = self.frameGeometry()

        # center point of screen
        cp = QDesktopWidget().availableGeometry().center()

        # move rectangle's center point to screen's center point
        qr.moveCenter(cp)

        # top left of rectangle becomes top left of window centering it
        self.move(qr.topLeft())
    def initUI(self):

        self.center()

        buttonReply = QMessageBox.question(self, 'PyQt5 message', "Do you like PyQt5?",
                                           QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel, QMessageBox.Cancel)
        if buttonReply == QMessageBox.Yes:
            print('Yes clicked.')
        if buttonReply == QMessageBox.No:
            print('No clicked.')
        if buttonReply == QMessageBox.Cancel:
            print('Cancel')

        self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = App()
    sys.exit(app.exec_())
_

Pyinstallerは現在3.8をサポートしていません。 python 3.8がサポートされるまで、3.7以前でビルドすることをお勧めします。

0
NADIRSHA