I need help for a few cod lines

Here are my calculator project’s codes (PyQt5)

from Hesap_Makinesi import HesapMakinesi
from PyQt5.QtWidgets import QMainWindow,QApplication,QLabel,QGridLayout,QTabWidget, QWidget,QPushButton
import sys
import Hesap_Makinesi
import math
from PyQt5.QtGui import *
from PyQt5.QtCore import *


class QDoublePushButton(QPushButton):
    doubleClicked = pyqtSignal()
    clicked = pyqtSignal()
    
    def __init__(self, *args, **kwargs):
        QPushButton.__init__(self, *args, **kwargs)
        self.timer = QTimer()
        self.timer.setSingleShot(True)
        self.timer.timeout.connect(self.clicked.emit)
        super().clicked.connect(self.checkDoubleClick)

    @pyqtSlot()
    def checkDoubleClick(self):
        if self.timer.isActive():
            self.doubleClicked.emit()
            self.timer.stop()
        else:
            self.timer.start(250)



class Pencere(QMainWindow, Hesap_Makinesi.HesapMakinesi):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
    
    
        button = self.pushButton_16 
        button = QDoublePushButton(self)
        button.doubleClicked.connect(self.on_doubleclick)
        
        
        self.pushButton.clicked.connect(self.click1)
        self.pushButton_2.clicked.connect(self.click2)
        self.pushButton_3.clicked.connect(self.click3)
        self.pushButton_4.clicked.connect(self.click4)
        self.pushButton_5.clicked.connect(self.click5)
        self.pushButton_6.clicked.connect(self.click6)
        self.pushButton_7.clicked.connect(self.click7)
        self.pushButton_8.clicked.connect(self.click8)
        self.pushButton_9.clicked.connect(self.click9)
        self.pushButton_10.clicked.connect(self.click10)
        self.pushButton_12.clicked.connect(self.click11)
        self.pushButton_17.clicked.connect(self.click12)
        self.pushButton_14.clicked.connect(self.click13)
        self.pushButton_15.clicked.connect(self.click14)
        self.pushButton_11.clicked.connect(self.click15)
        self.pushButton_13.clicked.connect(self.click16)
        self.pushButton_16.clicked.connect(self.click17)
        
        
        

        self.pushButton_18.clicked.connect(self.clicklast)
        self.pushButton_19.clicked.connect(self.delete)
        self.pushButton_20.clicked.connect(self.karekok)
        
        
        
            

        
        
    

    def click1(self):
        
        yazi = self.lineEdit.text() + "1"
        self.lineEdit.setText(yazi)

    def click2(self):
        yazi = self.lineEdit.text() + "2"
        self.lineEdit.setText(yazi)

    def click3(self):
        yazi = self.lineEdit.text() + "3"
        self.lineEdit.setText(yazi)

    def click4(self):
        yazi = self.lineEdit.text() + "4"
        self.lineEdit.setText(yazi)

    def click5(self):
        yazi = self.lineEdit.text() + "5"
        self.lineEdit.setText(yazi)

    def click6(self):
        yazi = self.lineEdit.text() + "6"
        self.lineEdit.setText(yazi)

    def click7(self):
        yazi = self.lineEdit.text() + "7"
        self.lineEdit.setText(yazi)
    
    def click8(self):
        yazi = self.lineEdit.text() + "8"
        self.lineEdit.setText(yazi)

    def click9(self):
        yazi = self.lineEdit.text() + "9"
        self.lineEdit.setText(yazi)

    def click10(self):
        yazi = self.lineEdit.text() + "0"
        self.lineEdit.setText(yazi)

    def click11(self):
        self.lineEdit.clear()

    def click12(self):
        superscript = {
    "0": "\u2070",
    "1": "\u00b9",
    "2": "\u00b2",
    "3": "\u00b3",
    "4": "\u2074",
    "5": "\u2075",
    "6": "\u2076",
    "7": "\u2077",
    "8": "\u2078",
    "9": "\u2079"
}


        def get_superscript(x):
            return "".join(superscript[i] for i in str(x))
    

        def exponential_expression(x):
            count = 2
            while (y := math.log(x, count)) != int(y):
                count += 1
            return f"{count}{get_superscript(int(y))}"
        
        try:
            
            d = self.lineEdit.text()
            self.lineEdit.setText(exponential_expression(x=int(d)))
            
        except ValueError:
            self.lineEdit.setText("Geçersiz İşlem")
            
        
        self.label_2.setText(self.lineEdit.text())

        

    def click13(self):
        yazi = self.lineEdit.text() + "+"
        self.lineEdit.setText(yazi)

    def click14(self):
        yazi = self.lineEdit.text() + "-"
        self.lineEdit.setText(yazi)

    def click15(self):
        yazi = self.lineEdit.text() + "*"
        self.lineEdit.setText(yazi)

    def click16(self):
        yazi = self.lineEdit.text() + "/"
        self.lineEdit.setText(yazi)
        
        
        
        
        
        

    def click17(self):
        yazi = self.lineEdit.text() + "**"
        self.lineEdit.setText(yazi)
        
        
        
        
        
        
        
        
        

    def delete(self):
        text = self.lineEdit.text()
        print(text[:len(text)-1]) 
        self.lineEdit.setText(text[:len(text)-1]) 
        
    def karekok(self):
        try:
            self.label_2.setText(self.lineEdit.text())
            txt = self.lineEdit.text()
            integer = int(txt)   
            rp = int(math.sqrt(abs(integer)))     
        
        
            ans = eval("{}*{}".format(str(rp),str(rp)))
        
            if str(ans) == self.label_2.text():
                self.lineEdit.setText(str(rp)+"^2") 
            
            
            else:         
                self.lineEdit.setText("Bu Sayının Karekökü Yoktur")
            
        except ValueError:
            self.lineEdit.setText("Geçersiz İşlem")
            

    
    def clicklast(self):
        # get the label text 
        equation = self.lineEdit.text() 
  
        try: 
            # getting the ans 
            ans = eval(equation) 
  
            # setting text to the label 
            self.lineEdit.setText(str(ans)) 
  
        except: 
            # setting text to the label 
            self.lineEdit.setText("Geçersiz İşlem")
            
        
        self.label_2.setText(self.lineEdit.text())
        
        
    
 
 
      
    @pyqtSlot()
        
    def on_doubleclick(self):
        yazi = self.lineEdit.text() + "."
        self.lineEdit.setText(yazi)
        
        
    
        
        
        


    
    
            

app = QApplication(sys.argv)
pencere = Pencere()
pencere.setWindowTitle("Hesap Makinesi")
pencere.show()
sys.exit(app.exec_())





my question is in :

class QDoublePushButton(QPushButton):
    doubleClicked = pyqtSignal()
    clicked = pyqtSignal()

here

and

button = self.pushButton_16 
        button = QDoublePushButton(self)
        button.doubleClicked.connect(self.on_doubleclick)

here.

I want it to say “**” when I press that
button once. (lineEdit).

When I double click I want him to say " . "
(lineEdit)

I created my double click class.

#this is double click class
class QDoublePushButton(QPushButton):
    doubleClicked = pyqtSignal()
    clicked = pyqtSignal()
    
    def __init__(self, *args, **kwargs):
        QPushButton.__init__(self, *args, **kwargs)
        self.timer = QTimer()
        self.timer.setSingleShot(True)
        self.timer.timeout.connect(self.clicked.emit)
        super().clicked.connect(self.checkDoubleClick)

    @pyqtSlot()
    def checkDoubleClick(self):
        if self.timer.isActive():
            self.doubleClicked.emit()
            self.timer.stop()
        else:
            self.timer.start(250)
#here is calculator's class.
class QDoublePushButton(QPushButton):
    doubleClicked = pyqtSignal()
    clicked = pyqtSignal()
#here is calculator's class
button = self.pushButton_16 
        button = QDoublePushButton(self)
        button.doubleClicked.connect(self.on_doubleclick)

I need to synchronize the top left button with the “**” button.
But I couldn’t did it.
Can u give me a hand ? :frowning: