Python旧版课程库
Python第 05 期 - 应用查看课程总览

146 pyqt小应用-计算器 3

主要内容

  • 小数点操作模块
  • 正负号操作模块
  • 1. 小数点操作模块

    如下程序完成小数点的显示功能。 功能:当文本框有数字,且没有小数点的时候,将小数点置入到数字后,再发送给文本框。 (以下程序添加到Calculator类中)
    
        def deal_point_btn(self):
            _str = self.line_edit.text() # 获取当前文本框的内容
            self.empty_flag = False # 空flag置为false
            point_count = self.line_edit.text().count('.') # 首先判断有没有小数点
            if point_count == 0: # 当当前文本框内容不存在小数点时,将小数点加入到内容中
                _str += '.'
            self.line_edit.setText(_str) # 将结果发送给文本框
    
    

    2. 正负号操作模块

    正负号判断,顾名思义就是将文本框的内容乘以-1,再返回给文本框。 程序如下: (以下程序添加到Calculator类中)
    
    
            def deal_sign_btn(self):
                _str = self.line_edit.text() # 获取当前文本框的内容
                tmp_num = float(_str) if _str.count('.') != 0 \
                    else int(_str) # 将文本框的内容转为对应的浮点型或者整型
                if tmp_num == 0.0: # 如果内容为0,则返回0
                    _str = str(tmp_num)
                else: # 否则返回乘以-1的结果
                    _str = str(-1 * tmp_num)
                self.line_edit.setText(_str) # 发送给文本框
    
    

    3. 小结

    • 本章完成了计算器的小数点操作模块
    • 本章完成了计算器的数正负号作模块

    习题