其他分享
首页 > 其他分享> > 简易计算器

简易计算器

作者:互联网

一.项目概括
我的项目是简易计算器,为了更加深度的学习python语言,利用虚拟机,python语言中的冷()find()index()函数for循环以及其他程序编写方法设计并制作一个可以进行简单的加法、减法、乘法、除法运算的简易计算器。
二界面
在这里插入图片描述
三.关键程序
def init(self, parent = None):
super(CMainWindow, self).init(parent);
self.setupUi(self)

    # 主窗体设置
    self.show()
def One(self):
    result=self.txtResult.text()
    num=1
    self.txtResult.setText(result+str(num)) 
def Two(self):
    result=self.txtResult.text()
    num=2
    self.txtResult.setText(result+str(num)) 
def Three(self):
    result=self.txtResult.text()
    num=3
    self.txtResult.setText(result+str(num)) 
def Four(self):
    result=self.txtResult.text()
    num=4
    self.txtResult.setText(result+str(num)) 
def Five(self):
    result=self.txtResult.text()
    num=5
    self.txtResult.setText(result+str(num)) 
def Six(self):
    result=self.txtResult.text()
    num=6
    self.txtResult.setText(result+str(num)) 
def Seven(self):
    result=self.txtResult.text()
    num=7
    self.txtResult.setText(result+str(num)) 
def Eight(self):
    result=self.txtResult.text()
    num=8
    self.txtResult.setText(result+str(num)) 
def Nine(self):
    result=self.txtResult.text()
    num=9
    self.txtResult.setText(result+str(num)) 
def Zero(self):
    result=self.txtResult.text()
    num=0
    self.txtResult.setText(result+str(num)) 
def Plus(self):
    result=self.txtResult.text()
    self.txtResult.setText(result+"+")
def Subtract(self):
    result=self.txtResult.text()
    self.txtResult.setText(result+"-")
def Multiply(self):
    result=self.txtResult.text()
    self.txtResult.setText(result+"*")
def Divid(self):
    result=self.txtResult.text()
    self.txtResult.setText(result+"/")

程序解读:将1、2、3、4、5、6、7、8、9、0、+、-、*、/按键赋值,当点击按键时文本中输出按键上表示的值。

def Amount(self):
    num1=""
    num2=""

    result=self.txtResult.text()
    if result.find("+")!=-1:#当result中存在“+”时
        b= result.index('+')#把“+”在result位置赋值给b     
    elif  result.find("*")!=-1 :#当result中存在“*”时
        b= result.index('*') #把“*”在result位置赋值给b 
    elif  result.find("/")!=-1:#当result中存在“/”时
        b= result.index('/')#把“/”在result位置赋值给b 
    elif  result.find("-")!=-1:#当result中存在“-”时
        j=""
        if  result[0]=="-":
            for i in range(1,len( result)):#for循环尾值为result的长度
                j=j+ result[i]
            b=j.index('-')+1#b的值为0
        else:
            b= result.index('-')#把“-”在result位置赋值给b 
    for i in range(0,b):#for循环将result中0到b的字符串赋给mun1
        num1=num1+ result[i]
    for j in range(b+1,len( result)):#for循环将result中b到0的字符串赋给mun2
        num2=num2+ result[j]
    if result[b]=="+":#当result中b位置的字符为“+”时
        num=float(num1)+float(num2)#将num1与num2相加赋值给num
    elif result[b]=="-":#当result中b位置的字符为“-”时
        num=float(num1)-float(num2)#将num1与num2相减赋值给num
    elif result[b]=="*":#当result中b位置的字符为“*”时
        num=float(num1)*float(num2)#将num1与num2相乘赋值给num
    elif result[b]=="/":#当result中b位置的字符为“/”时
        if float(num2)==0:#当num2为0时
           self.txtResult.setText("除数不能为0")
        else: 
           num=float(num1)/float(num2) #将num1与num2相加赋值给num
    Strnum=str(num)
    self.txtResult.setText(Strnum)#将num的值在文本Result中输出

程序解读:将num1和num2赋值,利用find()函数和index()函数,判断当文本Result中存在+、-、*、/时将他们在文本Result中的位置值赋值给b。特殊当Result[0]==”-”时, b赋值为0。

def Backspace(self):
    a=self.txtResult.text()#将文本的值赋给a
    num=""#num赋值为0
    for j in range(0,len(a)-1):#for循环尾值为a的长度减1
        num=num+a[j]#赋给num
    self.txtResult.setText(num) 

程序解读:当文本Result中b位置为+、-、*、/时将num1和num2进行运算结果赋值给num再输出到文本Result中。

def Eliminate(self):
   self.txtResult.setText(" ") #将文本Result清空

程序解读:利用for循环和len()函数将文本Result中0 到倒数第二个位置字符串赋值给

标签:self,简易,txtResult,num,result,计算器,setText,def
来源: https://blog.csdn.net/m0_61717346/article/details/122098956