Как использовать условный оператор if при проверке введенных данных?

Есть задача, в которой условия прописаны тем, что надо выбрать индекс переменной,
то есть умножение при выборе значения индекса 1, 2, 3, ... на соответствующее из значений 1000, 100, 10, ...

Не понимаю, как учитывать условие в данной ситуации, он его просто не воспринимает.

main.py

    from PyQt5 import QtWidgets
    
    from gert import Ui_MainWindow
    import sys
    
    
    class mywindow(QtWidgets.QMainWindow):
        def __init__(self):
            super(mywindow, self).__init__()
            self.ui = Ui_MainWindow()
            self.ui.setupUi(self)
            # подключение клик-сигнал к слоту btnClicked
            self.ui.pushButton.clicked.connect(self.btnClicked)
    
        def btnClicked(self):
    
            x = self.ui.textEdit_2.toPlainText()
            y = self.ui.textEdit.toPlainText()
    
            if y == 1:
    
                    z = float(x)
                    self.ui.lineEdit.setText(f" {z:.0f}")
    
    
    app = QtWidgets.QApplication([])
    application = mywindow()
    application.show()
    
    sys.exit(app.exec())

gert.py

    from PyQt5 import QtCore, QtGui, QtWidgets
    
    
    class Ui_MainWindow(object):
        def setupUi(self, MainWindow):
            MainWindow.setObjectName("MainWindow")
            MainWindow.resize(777, 484)
            self.centralwidget = QtWidgets.QWidget(MainWindow)
            self.centralwidget.setObjectName("centralwidget")
            self.listView = QtWidgets.QListView(self.centralwidget)
            self.listView.setGeometry(QtCore.QRect(-160, -120, 1281, 901))
            self.listView.setObjectName("listView")
            self.textEdit = QtWidgets.QTextEdit(self.centralwidget)
            self.textEdit.setGeometry(QtCore.QRect(180, 270, 121, 31))
            self.textEdit.setObjectName("textEdit")
            self.label = QtWidgets.QLabel(self.centralwidget)
            self.label.setGeometry(QtCore.QRect(20, 280, 151, 16))
            self.label.setObjectName("label")
            self.textEdit_2 = QtWidgets.QTextEdit(self.centralwidget)
            self.textEdit_2.setGeometry(QtCore.QRect(180, 230, 121, 31))
            self.textEdit_2.setObjectName("textEdit_2")
            self.label_2 = QtWidgets.QLabel(self.centralwidget)
            self.label_2.setGeometry(QtCore.QRect(30, 240, 151, 16))
            self.label_2.setObjectName("label_2")
            self.label_3 = QtWidgets.QLabel(self.centralwidget)
            self.label_3.setGeometry(QtCore.QRect(50, 30, 181, 111))
            self.label_3.setObjectName("label_3")
            self.label_4 = QtWidgets.QLabel(self.centralwidget)
            self.label_4.setGeometry(QtCore.QRect(180, 60, 71, 16))
            self.label_4.setObjectName("label_4")
            self.label_5 = QtWidgets.QLabel(self.centralwidget)
            self.label_5.setGeometry(QtCore.QRect(180, 80, 81, 16))
            self.label_5.setObjectName("label_5")
            self.label_6 = QtWidgets.QLabel(self.centralwidget)
            self.label_6.setGeometry(QtCore.QRect(180, 100, 71, 16))
            self.label_6.setObjectName("label_6")
            self.label_7 = QtWidgets.QLabel(self.centralwidget)
            self.label_7.setGeometry(QtCore.QRect(180, 120, 51, 16))
            self.label_7.setObjectName("label_7")
            self.textEdit_3 = QtWidgets.QTextEdit(self.centralwidget)
            self.textEdit_3.setGeometry(QtCore.QRect(230, 0, 351, 41))
            self.textEdit_3.setObjectName("textEdit_3")
            self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
            self.lineEdit.setGeometry(QtCore.QRect(540, 250, 141, 31))
            self.lineEdit.setObjectName("lineEdit")
            self.label_8 = QtWidgets.QLabel(self.centralwidget)
            self.label_8.setGeometry(QtCore.QRect(500, 260, 47, 13))
            self.label_8.setObjectName("label_8")
            self.label_9 = QtWidgets.QLabel(self.centralwidget)
            self.label_9.setGeometry(QtCore.QRect(180, 140, 71, 16))
            self.label_9.setObjectName("label_9")
            self.pushButton = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton.setGeometry(QtCore.QRect(550, 370, 121, 41))
            self.pushButton.setObjectName("pushButton")
            MainWindow.setCentralWidget(self.centralwidget)
            self.menubar = QtWidgets.QMenuBar(MainWindow)
            self.menubar.setGeometry(QtCore.QRect(0, 0, 777, 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", "MainWindow"))
            self.label.setText(_translate("MainWindow", "Введите значение индекса:"))
            self.label_2.setText(_translate("MainWindow", "Количественная единица:"))
            self.label_3.setText(_translate("MainWindow", "Значение индексов:"))
            self.label_4.setText(_translate("MainWindow", "1)килограммы"))
            self.label_5.setText(_translate("MainWindow", "2)милиграммы"))
            self.label_6.setText(_translate("MainWindow", "3)граммы"))
            self.label_7.setText(_translate("MainWindow", "4)тонны"))
            self.textEdit_3.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
    "<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
    "p, li { white-space: pre-wrap; }\n"
    "</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
    "<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:14pt;\">Антон Корнеенков ИВТ-12 Вариант-6</span></p></body></html>"))
            self.label_8.setText(_translate("MainWindow", "Итог:"))
            self.label_9.setText(_translate("MainWindow", "5)центнеры"))
            self.pushButton.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 шт):

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

Не уверен что правильно понял вас, но попробуйте так:

import sys
from PyQt5 import QtCore, QtGui, QtWidgets


#from gert import Ui_MainWindow
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(777, 484)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.listView = QtWidgets.QListView(self.centralwidget)
        self.listView.setGeometry(QtCore.QRect(-160, -120, 1281, 901))
        self.listView.setObjectName("listView")
        self.textEdit = QtWidgets.QTextEdit(self.centralwidget)
        self.textEdit.setGeometry(QtCore.QRect(180, 270, 121, 31))
        self.textEdit.setObjectName("textEdit")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(20, 280, 151, 16))
        self.label.setObjectName("label")
        self.textEdit_2 = QtWidgets.QTextEdit(self.centralwidget)
        self.textEdit_2.setGeometry(QtCore.QRect(180, 230, 121, 31))
        self.textEdit_2.setObjectName("textEdit_2")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(30, 240, 151, 16))
        self.label_2.setObjectName("label_2")
        self.label_3 = QtWidgets.QLabel(self.centralwidget)
        self.label_3.setGeometry(QtCore.QRect(50, 30, 181, 111))
        self.label_3.setObjectName("label_3")
        self.label_4 = QtWidgets.QLabel(self.centralwidget)
        self.label_4.setGeometry(QtCore.QRect(180, 60, 71, 16))
        self.label_4.setObjectName("label_4")
        self.label_5 = QtWidgets.QLabel(self.centralwidget)
        self.label_5.setGeometry(QtCore.QRect(180, 80, 81, 16))
        self.label_5.setObjectName("label_5")
        self.label_6 = QtWidgets.QLabel(self.centralwidget)
        self.label_6.setGeometry(QtCore.QRect(180, 100, 71, 16))
        self.label_6.setObjectName("label_6")
        self.label_7 = QtWidgets.QLabel(self.centralwidget)
        self.label_7.setGeometry(QtCore.QRect(180, 120, 51, 16))
        self.label_7.setObjectName("label_7")
        self.textEdit_3 = QtWidgets.QTextEdit(self.centralwidget)
        self.textEdit_3.setGeometry(QtCore.QRect(230, 0, 351, 41))
        self.textEdit_3.setObjectName("textEdit_3")
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(540, 250, 141, 31))
        self.lineEdit.setObjectName("lineEdit")
        self.label_8 = QtWidgets.QLabel(self.centralwidget)
        self.label_8.setGeometry(QtCore.QRect(500, 260, 47, 13))
        self.label_8.setObjectName("label_8")
        self.label_9 = QtWidgets.QLabel(self.centralwidget)
        self.label_9.setGeometry(QtCore.QRect(180, 140, 71, 16))
        self.label_9.setObjectName("label_9")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(550, 370, 121, 41))
        self.pushButton.setObjectName("pushButton")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 777, 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", "MainWindow"))
        self.label.setText(_translate("MainWindow", "Введите значение индекса:"))
        self.label_2.setText(_translate("MainWindow", "Количественная единица:"))
        self.label_3.setText(_translate("MainWindow", "Значение индексов:"))
        self.label_4.setText(_translate("MainWindow", "1)килограммы"))
        self.label_5.setText(_translate("MainWindow", "2)милиграммы"))
        self.label_6.setText(_translate("MainWindow", "3)граммы"))
        self.label_7.setText(_translate("MainWindow", "4)тонны"))
        self.textEdit_3.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:14pt;\">Антон Корнеенков ИВТ-12 Вариант-6</span></p></body></html>"))
        self.label_8.setText(_translate("MainWindow", "Итог:"))
        self.label_9.setText(_translate("MainWindow", "5)центнеры"))
        self.pushButton.setText(_translate("MainWindow", "Вычислить"))
  

# --> v v
class MyWindow(QtWidgets.QMainWindow):
    def __init__(self):
        super(MyWindow, self).__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        
        # подключение клик-сигнал к слоту btnClicked
        self.ui.pushButton.clicked.connect(self.btnClicked)
        
        self.ui.textEdit_2.setFocus()

    def btnClicked(self):
        x = self.ui.textEdit_2.toPlainText()
        y = self.ui.textEdit.toPlainText()

        if not y or not x:
            msg = QtWidgets.QMessageBox.information(
                self, 
                'Внимание', 
                'Заполните поля необходимые для расчета.'
            )
            self.ui.textEdit_2.setFocus()
            self.ui.lineEdit.clear()
            return
            
        try:
            z = float(x)
        except:
            msg = QtWidgets.QMessageBox.information(
                self, 
                'Внимание', 
                'Количественная единица может принимать значениен \n'
                'или целое число или число с плавающей запятой.'
            )
            self.ui.textEdit_2.setFocus()
            self.ui.lineEdit.clear()
            return
# ------------> v v <---- !!! +++
        if y == '1':
            self.ui.lineEdit.setText(f" {z * 1000:.0f}")
        elif y == '2':
            self.ui.lineEdit.setText(f" {z * 100:.0f}")
        elif y == '3':     
            self.ui.lineEdit.setText(f" {z * 10:.0f}")
#        elif y == '4':
#            ...
#        ...
        else:          
            msg = QtWidgets.QMessageBox.information(
                self, 
                'Внимание', 
                'Вы ввели неправильное значение индекса.'
            )
            self.ui.textEdit.setFocus()
            self.ui.lineEdit.clear() 
            

if __name__ == "__main__":
    app = QtWidgets.QApplication([])
    w = MyWindow()
    w.show()
    sys.exit(app.exec())

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

→ Ссылка