Не работают кнопки в окне

Я использую Qt designer для создания приложения. Есть главное окно (interface01) и форма (blok1), которую я открываю при нажатии первой по списку кнопки из interface01. интерфейс

С помощью "этого" открывается окно blok1:

from PyQt5 import QtCore, QtGui, QtWidgets

from blok1 import Ui_MainWindow

class Ui_Dialog(object):

    def openWindow(self):
        self.window = QtWidgets.QMainWindow()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self.window)
        self.window.show()

self.pushButton.clicked.connect(self.openWindow)

НО в окне blok1 не работают кнопки "рассчитать" и "очистить". Если запускаю отдельно blok1, то кнопки работают.

Подскажите, пожалуйста, в чем причина некорректной работы "приложения" и можно ли это исправить?

  1. interface01

from PyQt5 import QtCore, QtGui, QtWidgets

from blok1 import Ui_MainWindow

class Ui_Dialog(object):

    def openWindow(self):
        self.window = QtWidgets.QMainWindow()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self.window)
        self.window.show()

    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(1413, 996)
        self.label = QtWidgets.QLabel(Dialog)
        self.label.setGeometry(QtCore.QRect(340, 50, 861, 20))
        self.label.setObjectName("label")
        self.verticalLayoutWidget = QtWidgets.QWidget(Dialog)
        self.verticalLayoutWidget.setGeometry(QtCore.QRect(160, 119, 1211, 731))
        self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.pushButton = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton.setObjectName("pushButton")

        self.pushButton.clicked.connect(self.openWindow)

        self.verticalLayout.addWidget(self.pushButton)
        self.pushButton_2 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_2.setObjectName("pushButton_2")
        self.verticalLayout.addWidget(self.pushButton_2)
        self.pushButton_3 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_3.setObjectName("pushButton_3")
        self.verticalLayout.addWidget(self.pushButton_3)
        self.pushButton_4 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_4.setObjectName("pushButton_4")
        self.verticalLayout.addWidget(self.pushButton_4)
        self.pushButton_5 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_5.setObjectName("pushButton_5")
        self.verticalLayout.addWidget(self.pushButton_5)
        self.pushButton_6 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_6.setObjectName("pushButton_6")
        self.verticalLayout.addWidget(self.pushButton_6)

        self.retranslateUi(Dialog)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Вар1"))
        self.label.setText(_translate("Dialog", "<html><head/><body><p>Эргономические показатели для экспертной оценки компоновки средств отображения информации (СОИ), органов управления (ОУ) и условий рабочего процесса</p></body></html>"))
        self.pushButton.setText(_translate("Dialog", "1. Расположение органов управления в зонах моторного поля человека"))
        self.pushButton_2.setText(_translate("Dialog", "2. Расположение средств отображения информации в информационном поле"))
        self.pushButton_3.setText(_translate("Dialog", "3. Организация рабочих движений оператора"))
        self.pushButton_4.setText(_translate("Dialog", "4. Совместное расположение средств отображения и органов управления"))
        self.pushButton_5.setText(_translate("Dialog", "5. Гигиенические показатели производственной среды"))
        self.pushButton_6.setText(_translate("Dialog", "Результат"))


if __name__ == "__main__":

    import sys

    app = QtWidgets.QApplication(sys.argv)

    Dialog = QtWidgets.QDialog()

    ui = Ui_Dialog()

    ui.setupUi(Dialog)

    Dialog.show()

    sys.exit(app.exec_())
  1. blok1

from PyQt5 import QtCore, QtGui, QtWidgets
    
class Ui_MainWindow(object):


    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1598, 906)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget.setGeometry(QtCore.QRect(50, 20, 321, 831))
        self.gridLayoutWidget.setObjectName("gridLayoutWidget")
        self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget_2.setGeometry(QtCore.QRect(370, 20, 561, 831))
        self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.gridLayoutWidget_2)
        self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.lineEdit_2 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.gridLayout_2.addWidget(self.lineEdit_2, 10, 1, 1, 1)
        self.lineEdit_4 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_4.setObjectName("lineEdit_4")
        self.gridLayout_2.addWidget(self.lineEdit_4, 9, 1, 1, 1)
        self.lineEdit_6 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_6.setObjectName("lineEdit_6")
        self.gridLayout_2.addWidget(self.lineEdit_6, 8, 1, 1, 1)
        self.lineEdit_8 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_8.setObjectName("lineEdit_8")
        self.gridLayout_2.addWidget(self.lineEdit_8, 7, 1, 1, 1)
        self.lineEdit_9 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_9.setObjectName("lineEdit_9")
        self.gridLayout_2.addWidget(self.lineEdit_9, 6, 1, 1, 1)
        self.lineEdit_10 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_10.setObjectName("lineEdit_10")
        self.gridLayout_2.addWidget(self.lineEdit_10, 5, 1, 1, 1)
        self.lineEdit_3 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_3.setObjectName("lineEdit_3")
        self.gridLayout_2.addWidget(self.lineEdit_3, 4, 1, 1, 1)
        self.lineEdit_7 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_7.setObjectName("lineEdit_7")
        self.gridLayout_2.addWidget(self.lineEdit_7, 3, 1, 1, 1)
        self.lineEdit_5 = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_5.setObjectName("lineEdit_5")
        self.gridLayout_2.addWidget(self.lineEdit_5, 2, 1, 1, 1)
        self.textEdit_21 = QtWidgets.QTextEdit(self.gridLayoutWidget_2)
        self.textEdit_21.setObjectName("textEdit_21")
        self.gridLayout_2.addWidget(self.textEdit_21, 1, 1, 1, 1)
        self.gridLayoutWidget_3 = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget_3.setGeometry(QtCore.QRect(1200, 30, 321, 71))
        self.gridLayoutWidget_3.setObjectName("gridLayoutWidget_3")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.gridLayoutWidget_3)
        self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.pushButton_3 = QtWidgets.QPushButton(self.gridLayoutWidget_3)
        self.pushButton_3.setObjectName("pushButton_3")
        self.gridLayout_3.addWidget(self.pushButton_3, 0, 0, 1, 1)
        self.pushButton_2 = QtWidgets.QPushButton(self.gridLayoutWidget_3)
        self.pushButton_2.setObjectName("pushButton_2")
        self.gridLayout_3.addWidget(self.pushButton_2, 0, 1, 1, 1)
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(1180, 150, 381, 61))
        self.lineEdit.setObjectName("lineEdit")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1598, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Расположение органов управления в зонах моторного поля"))

        self.pushButton_3.setText(_translate("MainWindow", "Рассчитать"))
        self.pushButton_2.setText(_translate("MainWindow", "Очистить"))






if __name__ == "__main__":

        import sys
        app = QtWidgets.QApplication(sys.argv)
        MainWindow = QtWidgets.QMainWindow()
        ui = Ui_MainWindow()
        ui.setupUi(MainWindow)
        MainWindow.show()
        sys.exit(app.exec_())
  1. main

import sys   

from PyQt5 import QtCore, QtGui, QtWidgets
 
from blok1 import Ui_MainWindow

app = QtWidgets.QApplication(sys.argv)

MainWindow = QtWidgets.QMainWindow()

ui = Ui_MainWindow()

ui.setupUi(MainWindow)

MainWindow.show()



    def clr():
         ui.lineEdit_10.clear()
         ui.lineEdit_2.clear()
         ui.lineEdit_3.clear()
         ui.lineEdit_4.clear()
         ui.lineEdit_5.clear()
         ui.lineEdit_6.clear()
         ui.lineEdit_7.clear()
         ui.lineEdit_8.clear()
         ui.lineEdit_9.clear()

    def rst():
        num1 = int(ui.lineEdit_10.text())
        num2 = int(ui.lineEdit_2.text())
        num3 = int(ui.lineEdit_3.text())
        num4 = int(ui.lineEdit_4.text())
        num5 = int(ui.lineEdit_5.text())
        num6 = int(ui.lineEdit_6.text())
        num7 = int(ui.lineEdit_7.text())
        num8 = int(ui.lineEdit_8.text())
        num9 = int(ui.lineEdit_9.text())
        x = [num1, num2, num3, num4, num5, num6, num7, num8, num9]
        if x == 0 or x == 1:
            s = num1+num2+num3+num4+num5+num6+num7+num8+num9
            r = float(s / 9)
            ui.lineEdit.setText(str(r))
        else:
            ui.lineEdit.setText("Все поля должны быть заполнены значениями 0 или 1")
    
    
    ui.pushButton_3.clicked.connect(rst)
    ui.pushButton_2.clicked.connect(clr)
    sys.exit(app.exec_())

Ответы (1 шт):

Автор решения: S. Nick

НИКОГДА НЕ ИЗМЕНЯЙТЕ код, сгенерированный Qt Designer, НИКОГДА !!!.
Создайте другой класс, который наследуется от соответствующего виджета, и используйте созданный класс для его заполнения.

Я отметил для вас изменения, которые надо внести в приложение.


q1256441_Dialog.py

from PyQt5 import QtCore, QtGui, QtWidgets
#from blok1 import Ui_MainWindow

from q1256441 import MainWindow                                                # +++


class Ui_Dialog(object):
    '''  НИКОГДА НЕ ИЗМЕНЯЙТЕ код, сгенерированный Qt Designer, НИКОГДА !!!
    def openWindow(self):
        self.window = QtWidgets.QMainWindow()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self.window)
        self.window.show()
    '''
    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(1413, 996)
        self.label = QtWidgets.QLabel(Dialog)
        self.label.setGeometry(QtCore.QRect(340, 50, 861, 20))
        self.label.setObjectName("label")
        self.verticalLayoutWidget = QtWidgets.QWidget(Dialog)
        self.verticalLayoutWidget.setGeometry(QtCore.QRect(160, 119, 1211, 731))
        self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.pushButton = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton.setObjectName("pushButton")

# НИКОГДА НЕ ИЗМЕНЯЙТЕ код, сгенерированный Qt Designer, НИКОГДА !!!
#        self.pushButton.clicked.connect(self.openWindow)

        self.verticalLayout.addWidget(self.pushButton)
        self.pushButton_2 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_2.setObjectName("pushButton_2")
        self.verticalLayout.addWidget(self.pushButton_2)
        self.pushButton_3 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_3.setObjectName("pushButton_3")
        self.verticalLayout.addWidget(self.pushButton_3)
        self.pushButton_4 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_4.setObjectName("pushButton_4")
        self.verticalLayout.addWidget(self.pushButton_4)
        self.pushButton_5 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_5.setObjectName("pushButton_5")
        self.verticalLayout.addWidget(self.pushButton_5)
        self.pushButton_6 = QtWidgets.QPushButton(self.verticalLayoutWidget)
        self.pushButton_6.setObjectName("pushButton_6")
        self.verticalLayout.addWidget(self.pushButton_6)

        self.retranslateUi(Dialog)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Вар1"))
        self.label.setText(_translate("Dialog", "<html><head/><body><p>Эргономические показатели для экспертной оценки компоновки средств отображения информации (СОИ), органов управления (ОУ) и условий рабочего процесса</p></body></html>"))
        self.pushButton.setText(_translate("Dialog", "1. Расположение органов управления в зонах моторного поля человека"))
        self.pushButton_2.setText(_translate("Dialog", "2. Расположение средств отображения информации в информационном поле"))
        self.pushButton_3.setText(_translate("Dialog", "3. Организация рабочих движений оператора"))
        self.pushButton_4.setText(_translate("Dialog", "4. Совместное расположение средств отображения и органов управления"))
        self.pushButton_5.setText(_translate("Dialog", "5. Гигиенические показатели производственной среды"))
        self.pushButton_6.setText(_translate("Dialog", "Результат"))


# +++ vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
class Dialog(QtWidgets.QDialog, Ui_Dialog):
    def __init__(self):
        super().__init__()
        self.setupUi(self)

        self.pushButton.clicked.connect(self.openWindow)
        
    def openWindow(self):
        self.mainWindow = MainWindow()
        self.mainWindow.show()
        self.hide()            # я не знаю, надо ли закрывать диалоговое окно? пока закрыл
# +++ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    w = Dialog()
#    ui = Ui_Dialog()
#    ui.setupUi(Dialog)
    w.show()
    sys.exit(app.exec_())

q1256441.py

import sys   
from PyQt5 import QtCore, QtGui, QtWidgets
 
#from blok1 import Ui_MainWindow
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1598, 906)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget.setGeometry(QtCore.QRect(50, 20, 321, 831))
        self.gridLayoutWidget.setObjectName("gridLayoutWidget")
        
        self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)         # ???
#        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)    
        
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget_2.setGeometry(QtCore.QRect(370, 20, 561, 831))
        self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.gridLayoutWidget_2)
        self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.lineEdit_2 = QtWidgets.QLineEdit("2", self.gridLayoutWidget_2)    # "2", убрать
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.gridLayout_2.addWidget(self.lineEdit_2, 10, 1, 1, 1)
        self.lineEdit_4 = QtWidgets.QLineEdit("4", self.gridLayoutWidget_2)    # ...
        self.lineEdit_4.setObjectName("lineEdit_4")
        self.gridLayout_2.addWidget(self.lineEdit_4, 9, 1, 1, 1)
        self.lineEdit_6 = QtWidgets.QLineEdit("6", self.gridLayoutWidget_2)
        self.lineEdit_6.setObjectName("lineEdit_6")
        self.gridLayout_2.addWidget(self.lineEdit_6, 8, 1, 1, 1)
        self.lineEdit_8 = QtWidgets.QLineEdit("8", self.gridLayoutWidget_2)
        self.lineEdit_8.setObjectName("lineEdit_8")
        self.gridLayout_2.addWidget(self.lineEdit_8, 7, 1, 1, 1)
        self.lineEdit_9 = QtWidgets.QLineEdit("9", self.gridLayoutWidget_2)
        self.lineEdit_9.setObjectName("lineEdit_9")
        self.gridLayout_2.addWidget(self.lineEdit_9, 6, 1, 1, 1)
        self.lineEdit_10 = QtWidgets.QLineEdit("10", self.gridLayoutWidget_2)
        self.lineEdit_10.setObjectName("lineEdit_10")
        self.gridLayout_2.addWidget(self.lineEdit_10, 5, 1, 1, 1)
        self.lineEdit_3 = QtWidgets.QLineEdit("4", self.gridLayoutWidget_2)
        self.lineEdit_3.setObjectName("lineEdit_3")
        self.gridLayout_2.addWidget(self.lineEdit_3, 4, 1, 1, 1)
        self.lineEdit_7 = QtWidgets.QLineEdit("7", self.gridLayoutWidget_2)
        self.lineEdit_7.setObjectName("lineEdit_7")
        self.gridLayout_2.addWidget(self.lineEdit_7, 3, 1, 1, 1)
        self.lineEdit_5 = QtWidgets.QLineEdit("5", self.gridLayoutWidget_2)
        self.lineEdit_5.setObjectName("lineEdit_5")
        self.gridLayout_2.addWidget(self.lineEdit_5, 2, 1, 1, 1)
        self.textEdit_21 = QtWidgets.QTextEdit(self.gridLayoutWidget_2)
        self.textEdit_21.setObjectName("textEdit_21")
        self.gridLayout_2.addWidget(self.textEdit_21, 1, 1, 1, 1)
        self.gridLayoutWidget_3 = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget_3.setGeometry(QtCore.QRect(1200, 30, 321, 71))
        self.gridLayoutWidget_3.setObjectName("gridLayoutWidget_3")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.gridLayoutWidget_3)
        self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.pushButton_3 = QtWidgets.QPushButton(self.gridLayoutWidget_3)
        self.pushButton_3.setObjectName("pushButton_3")
        self.gridLayout_3.addWidget(self.pushButton_3, 0, 0, 1, 1)
        self.pushButton_2 = QtWidgets.QPushButton(self.gridLayoutWidget_3)
        self.pushButton_2.setObjectName("pushButton_2")

# НИКОГДА НЕ ИЗМЕНЯЙТЕ код, сгенерированный Qt Designer, НИКОГДА !!!
# ---------------------> ? <--------          
#        self.gridLayout_3.addWidget(self.pushButton_2, 0, 1, 1, 1)
        self.gridLayout_2.addWidget(self.pushButton_2, 0, 1, 1, 1)        
        
        self.lineEdit = QtWidgets.QLineEdit("100", self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(1180, 150, 381, 61))
        self.lineEdit.setObjectName("lineEdit")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1598, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Расположение органов управления в зонах моторного поля"))
        self.pushButton_3.setText(_translate("MainWindow", "Рассчитать"))
        self.pushButton_2.setText(_translate("MainWindow", "Очистить"))


# +++ vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
        
        self.pushButton_3.clicked.connect(self.rst)
        self.pushButton_2.clicked.connect(self.clr)
        
    def clr(self):
         self.lineEdit_10.clear()
         self.lineEdit_2.clear()
         self.lineEdit_3.clear()
         self.lineEdit_4.clear()
         self.lineEdit_5.clear()
         self.lineEdit_6.clear()
         self.lineEdit_7.clear()
         self.lineEdit_8.clear()
         self.lineEdit_9.clear()

    def rst(self):
        if not self.lineEdit_10.text() or not self.lineEdit_2.text() or \
           not self.lineEdit_3.text() or not self.lineEdit_4.text() or \
           not self.lineEdit_5.text() or not self.lineEdit_6.text() or \
           not self.lineEdit_7.text() or not self.lineEdit_8.text() or \
           not self.lineEdit_9.text():
           self.lineEdit.setText("Все поля должны быть заполнены значениями 0 или 1")
        else:
            num1 = int(self.lineEdit_10.text())
            num2 = int(self.lineEdit_2.text())
            num3 = int(self.lineEdit_3.text())
            num4 = int(self.lineEdit_4.text())
            num5 = int(self.lineEdit_5.text())
            num6 = int(self.lineEdit_6.text())
            num7 = int(self.lineEdit_7.text())
            num8 = int(self.lineEdit_8.text())
            num9 = int(self.lineEdit_9.text())
    
            s = num1 + num2 + num3 + num4 + num5 + num6 + num7 + num8 + num9
            r = float(s / 9)
            self.lineEdit.setText(str(r))
# +++ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

        ''' НЕТ, так не правильно           
        x = [num1, num2, num3, num4, num5, num6, num7, num8, num9]
        if x == 0 or x == 1:
            s = num1+num2+num3+num4+num5+num6+num7+num8+num9
            r = float(s / 9)
            self.lineEdit.setText(str(r))
        else:
            self.lineEdit.setText("Все поля должны быть заполнены значениями 0 или 1")
        '''
        
        
if __name__ == "__main__":    
    import sys
    app = QtWidgets.QApplication(sys.argv)
    w = MainWindow()
    w.show()
    sys.exit(app.exec_())

введите сюда описание изображения

→ Ссылка