Im building a calculator with pyside6 but i can't use the widgets like variables so i have to repeat lines and it just looks a mess
class window(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("Calculator")
self.setMinimumSize(350, 450)
self.resize(self.minimumSize())
layoutV = QVBoxLayout()
layoutH1 = QHBoxLayout()
layoutH2 = QHBoxLayout()
layoutH3 = QHBoxLayout()
layoutH4 = QHBoxLayout()
button7 = QPushButton("7"); button8 = QPushButton("8"); button9 = QPushButton("9"); buttonD = QPushButton("/")
button4 = QPushButton("4"); button5 = QPushButton("5"); button6 = QPushButton("6"); buttonX = QPushButton("x")
button1 = QPushButton("1"); button2 = QPushButton("2"); button3 = QPushButton("3"); buttonM = QPushButton("-")
button0 = QPushButton("0"); buttonO = QPushButton("."); buttonP = QPushButton("+"); buttonE = QPushButton("=")
layoutH1.addWidget(button7); layoutH1.addWidget(button8); layoutH1.addWidget(button9); layoutH1.addWidget(buttonD)
layoutH2.addWidget(button6); layoutH2.addWidget(button5); layoutH2.addWidget(button4); layoutH2.addWidget(buttonX)
layoutH3.addWidget(button1); layoutH3.addWidget(button2); layoutH3.addWidget(button3); layoutH3.addWidget(buttonM)
layoutH4.addWidget(button0); layoutH4.addWidget(buttonO); layoutH4.addWidget(buttonP); layoutH4.addWidget(buttonE)
layoutV.addLayout(layoutH1)
layoutV.addLayout(layoutH2)
layoutV.addLayout(layoutH3)
layoutV.addLayout(layoutH4)
Tried changing the size of a bunch of buttons at once but didn't work:
buttons = button0, button1, button2, button3, button4, button5, button6, button7, button8, button9
buttons.setFixedSize(40, 40)
Any tips on how i can make the code simpler in general?