歡迎您光臨本站 註冊首頁

PyQt5實現簡單的計算器

←手機掃碼閱讀     hongdian2012 @ 2020-06-08 , reply:0

本文實例為大家分享了PyQt5實現簡單計算器的具體代碼,供大家參考,具體內容如下

下面我們將介紹使用python的PyQt5圖形界面來編寫一個簡易的計算器,實現“加,減,乘,除,平方,開方”等運算。

代碼如下:

  from PyQt5.QtGui import *  from PyQt5.Qt import *  from PyQt5.QtCore import *  import sys,math,string    class Calculator(QWidget):    def __init__(self,parent=None):      QWidget.__init__(self,parent=parent)      self.initUI()      self.last=[]    def initUI(self):      list=['&','**','s','C',7,8,9,'+',4,5,6,'-',1,2,3,'*',0,'.','=','/']      length=len(list)      #創建動態按鈕      for i in range (length):        self.button=QPushButton(str(list[i]),self)        #將按鈕的clicked信號與onButtonClick函數相連        self.button.clicked.connect(self.onButtonClick)        x=i%4        y=int(i/4)        self.button.move(x*40+10,y*40+100)        self.button.resize(30,30)      #創建文本框      self.lineEdit=QLineEdit('',self)      self.lineEdit.move(10,10)      self.lineEdit.resize(150,70)      self.setGeometry(200,200,170,300)      self.setWindowTitle('計算器')      self.show()    def onButtonClick(self):      t=self.lineEdit.text()#獲取文本框文本      new=self.sender().text()      self.last.append(new)      print(self.last)      self.lineEdit.setText(t+new)      if new== "=":        result=eval(str(t))#計算        self.lineEdit.setText(str(result))      if new=='C':        self.lineEdit.setText('')      if new=='sqrt':        self.lineEdit.setText('')        result=math.sqrt(string.atof(t))        self.lineEdit.setText(str(result))      if new=="**":        self.lineEdit.setText('')        result=string.atof(t)**2        self.lineEdit.setText(str(result))    app=QApplication(sys.argv)  w=Calculator()  w.show()  sys.exit(app.exec_())

 

實現界面如下:

                                                       

   


[hongdian2012 ] PyQt5實現簡單的計算器已經有238次圍觀

http://coctec.com/docs/python/shhow-post-237500.html