python實現計算器簡易版
阿新 • • 發佈:2020-12-18
Python計算器加減乘除,供大家參考,具體內容如下
1、效果圖
2、程式碼
# coding=utf-8 import sys from PyQt5.QtWidgets import QApplication,QWidget,QPushButton,QGridLayout,QLCDNumber,QSlider,QVBoxLayout,qApp,\ QMainWindow from PyQt5.QtCore import Qt class ForExample(QWidget): def __init__(self): super().__init__() # self.clu = 0.0 # print('lx',type(self.clu)) self.info = 0.0 print(type(self.info)) self.statusSUN = False self.statusPoint = False self.initUI() def initUI(self): # 網格佈局 grid = QGridLayout() self.setLayout(grid) # names = ['清除','後退','','關閉',# '7','8','9','/',# '4','5','6','*',# '1','2','3','-',# '0','.','=','+'] # 建立一個選單欄 # menubar = self.menuBar() # # 新增選單 # fileMenu = menubar.addMenu('&File') # LCD顯示屏 self.lcd = QLCDNumber(self) self.lcd.setDigitCount(9) self.lcd.isRightToLeft() self.lcd.display(self.info) grid.addWidget(self.lcd,2,4) # 清除 bc = QPushButton('清除') bc.clicked.connect(self.def_bc) grid.addWidget(bc,0) # 後退 bk = QPushButton('後退') bk.clicked.connect(self.def_bk) grid.addWidget(bk,1) # ca = QPushButton('計算') # ca.clicked.connect(self.def_bc) # grid.addWidget(ca,2) of = QPushButton('關閉') of.clicked.connect(qApp.quit) grid.addWidget(of,3) # b7 = QPushButton('7') b7.clicked.connect(self.def_b7) grid.addWidget(b7,3,0) b8 = QPushButton('8') b8.clicked.connect(self.def_b8) grid.addWidget(b8,1) b9 = QPushButton('9') b9.clicked.connect(self.def_b9) grid.addWidget(b9,2) b4 = QPushButton('4') b4.clicked.connect(self.def_b4) grid.addWidget(b4,4,0) b5 = QPushButton('5') b5.clicked.connect(self.def_b5) grid.addWidget(b5,1) b6 = QPushButton('6') b6.clicked.connect(self.def_b6) grid.addWidget(b6,2) bExcept = QPushButton('/') bExcept.clicked.connect(self.def_bExcept) grid.addWidget(bExcept,3) bMultiply = QPushButton('*') bMultiply.clicked.connect(self.def_bMultiply) grid.addWidget(bMultiply,3) b1 = QPushButton('1') b1.clicked.connect(self.def_b1) grid.addWidget(b1,5,0) b2 = QPushButton('2') b2.clicked.connect(self.def_b2) grid.addWidget(b2,1) b3 = QPushButton('3') b3.clicked.connect(self.def_b3) grid.addWidget(b3,2) bLess = QPushButton('-') bLess.clicked.connect(self.def_bLess) grid.addWidget(bLess,3) b0 = QPushButton('0') b0.clicked.connect(self.def_b0) grid.addWidget(b0,6,0) bPoint = QPushButton('.') bPoint.clicked.connect(self.def_bPoint) grid.addWidget(bPoint,1) bsun = QPushButton('+') bsun.clicked.connect(self.def_bsun) grid.addWidget(bsun,3) bsun = QPushButton('=') bsun.clicked.connect(self.def_bresult) grid.addWidget(bsun,2) self.setGeometry(300,300,250,250) self.show() ############################################################# def def_bc(self): self.info = 0 self.clu = 0 self.statusSUN = False self.lcd.display(self.info) def def_bk(self): if len(str(self.info)) > 1: self.info = int(str(self.info)[:-1]) else: self.info = 0 self.lcd.display(self.info) def def_b7(self): if self.info == 0: self.info = 7 else: self.info = int(str(self.info) + '7') self.statusSUN = False self.lcd.display(self.info) def def_b8(self): if self.info == 0: self.info = 8 else: self.info = int(str(self.info) + '8') self.statusSUN = False self.lcd.display(self.info) def def_b9(self): if self.info == 0: self.info = 9 else: self.info = int(str(self.info) + '9') self.statusSUN = False self.lcd.display(self.info) # 除 def def_bExcept(self): pass def def_b4(self): if self.info == 0: self.info = 4 else: self.info = int(str(self.info) + '4') self.statusSUN = False self.lcd.display(self.info) def def_b5(self): if self.info == 0: self.info = 5 else: self.info = int(str(self.info) + '5') self.statusSUN = False self.lcd.display(self.info) def def_b6(self): if self.info == 0: self.info = 6 else: self.info = int(str(self.info) + '6') self.statusSUN = False self.lcd.display(self.info) # 乘 def def_bMultiply(self): pass def def_b1(self): if self.info == 0: self.info = 1 else: self.info = int(str(self.info) + '1') self.statusSUN = False self.lcd.display(self.info) def def_b2(self): if self.info == 0: self.info = 2 else: self.info = int(str(self.info) + '2') self.statusSUN = False self.lcd.display(self.info) def def_b3(self): if self.info == 0: self.info = 3 else: self.info = int(str(self.info) + '3') self.statusSUN = False self.lcd.display(self.info) # 減 def def_bLess(self): pass def def_b0(self): if self.info == 0: self.info = 0 else: self.info = int(str(self.info) + '0') self.statusSUN = False self.lcd.display(self.info) def def_bPoint(self): if self.statusPoint: pass else: self.statusPoint = True if self.info == 0: self.info = 0. else: self.info = int(str(self.info) + '.') self.statusSUN = False self.lcd.display(self.info) # 等於,根據self.status判斷輸入的計算符號 def def_bresult(self): self.clu += self.info self.lcd.display(self.clu) self.statusSUN = False self.info = 0 # 加 def def_bsun(self): self.clu += self.info self.lcd.display(self.clu) self.statusSUN = True self.info = 0 if __name__ == '__main__': app = QApplication(sys.argv) fe = ForExample() sys.exit(app.exec_()) # coding=utf-8 import sys from PyQt5.QtWidgets import QApplication,250) self.show() ############################################################# def def_bc(self): self.info = 0 self.clu = 0 self.statusSUN = False self.lcd.display(self.info) def def_bk(self): if len(str(self.info)) > 1: self.info = int(str(self.info)[:-1]) else: self.info = 0 self.lcd.display(self.info) def def_b7(self): if self.info == 0: self.info = 7 else: self.info = int(str(self.info) + '7') self.statusSUN = False self.lcd.display(self.info) def def_b8(self): if self.info == 0: self.info = 8 else: self.info = int(str(self.info) + '8') self.statusSUN = False self.lcd.display(self.info) def def_b9(self): if self.info == 0: self.info = 9 else: self.info = int(str(self.info) + '9') self.statusSUN = False self.lcd.display(self.info) # 除 def def_bExcept(self): pass def def_b4(self): if self.info == 0: self.info = 4 else: self.info = int(str(self.info) + '4') self.statusSUN = False self.lcd.display(self.info) def def_b5(self): if self.info == 0: self.info = 5 else: self.info = int(str(self.info) + '5') self.statusSUN = False self.lcd.display(self.info) def def_b6(self): if self.info == 0: self.info = 6 else: self.info = int(str(self.info) + '6') self.statusSUN = False self.lcd.display(self.info) # 乘 def def_bMultiply(self): pass def def_b1(self): if self.info == 0: self.info = 1 else: self.info = int(str(self.info) + '1') self.statusSUN = False self.lcd.display(self.info) def def_b2(self): if self.info == 0: self.info = 2 else: self.info = int(str(self.info) + '2') self.statusSUN = False self.lcd.display(self.info) def def_b3(self): if self.info == 0: self.info = 3 else: self.info = int(str(self.info) + '3') self.statusSUN = False self.lcd.display(self.info) # 減 def def_bLess(self): pass def def_b0(self): if self.info == 0: self.info = 0 else: self.info = int(str(self.info) + '0') self.statusSUN = False self.lcd.display(self.info) def def_bPoint(self): if self.statusPoint: pass else: self.statusPoint = True if self.info == 0: self.info = 0. else: self.info = int(str(self.info) + '.') self.statusSUN = False self.lcd.display(self.info) # 等於,根據self.status判斷輸入的計算符號 def def_bresult(self): self.clu += self.info self.lcd.display(self.clu) self.statusSUN = False self.info = 0 # 加 def def_bsun(self): self.clu += self.info self.lcd.display(self.clu) self.statusSUN = True self.info = 0 if __name__ == '__main__': app = QApplication(sys.argv) fe = ForExample() sys.exit(app.exec_())
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。