python实现计算器简易版

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, 0, 0, 2, 4)

# 清除

bc = QPushButton('清除')

bc.clicked.connect(self.def_bc)

grid.addWidget(bc, 2, 0)

# 后退

bk = QPushButton('后退')

bk.clicked.connect(self.def_bk)

grid.addWidget(bk, 2, 1)

# ca = QPushButton('计算')

# ca.clicked.connect(self.def_bc)

# grid.addWidget(ca, 2, 2)

of = QPushButton('关闭')

of.clicked.connect(qApp.quit)

grid.addWidget(of, 2, 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, 3, 1)

b9 = QPushButton('9')

b9.clicked.connect(self.def_b9)

grid.addWidget(b9, 3, 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, 4, 1)

b6 = QPushButton('6')

b6.clicked.connect(self.def_b6)

grid.addWidget(b6, 4, 2)

bExcept = QPushButton('/')

bExcept.clicked.connect(self.def_bExcept)

grid.addWidget(bExcept, 3, 3)

bMultiply = QPushButton('*')

bMultiply.clicked.connect(self.def_bMultiply)

grid.addWidget(bMultiply, 4, 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, 5, 1)

b3 = QPushButton('3')

b3.clicked.connect(self.def_b3)

grid.addWidget(b3, 5, 2)

bLess = QPushButton('-')

bLess.clicked.connect(self.def_bLess)

grid.addWidget(bLess, 5, 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, 6, 1)

bsun = QPushButton('+')

bsun.clicked.connect(self.def_bsun)

grid.addWidget(bsun, 6, 3)

bsun = QPushButton('=')

bsun.clicked.connect(self.def_bresult)

grid.addWidget(bsun, 6, 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, 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, 0, 0, 2, 4)

# 清除

bc = QPushButton('清除')

bc.clicked.connect(self.def_bc)

grid.addWidget(bc, 2, 0)

# 后退

bk = QPushButton('后退')

bk.clicked.connect(self.def_bk)

grid.addWidget(bk, 2, 1)

# ca = QPushButton('计算')

# ca.clicked.connect(self.def_bc)

# grid.addWidget(ca, 2, 2)

of = QPushButton('关闭')

of.clicked.connect(qApp.quit)

grid.addWidget(of, 2, 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, 3, 1)

b9 = QPushButton('9')

b9.clicked.connect(self.def_b9)

grid.addWidget(b9, 3, 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, 4, 1)

b6 = QPushButton('6')

b6.clicked.connect(self.def_b6)

grid.addWidget(b6, 4, 2)

bExcept = QPushButton('/')

bExcept.clicked.connect(self.def_bExcept)

grid.addWidget(bExcept, 3, 3)

bMultiply = QPushButton('*')

bMultiply.clicked.connect(self.def_bMultiply)

grid.addWidget(bMultiply, 4, 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, 5, 1)

b3 = QPushButton('3')

b3.clicked.connect(self.def_b3)

grid.addWidget(b3, 5, 2)

bLess = QPushButton('-')

bLess.clicked.connect(self.def_bLess)

grid.addWidget(bLess, 5, 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, 6, 1)

bsun = QPushButton('+')

bsun.clicked.connect(self.def_bsun)

grid.addWidget(bsun, 6, 3)

bsun = QPushButton('=')

bsun.clicked.connect(self.def_bresult)

grid.addWidget(bsun, 6, 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_())

以上是 python实现计算器简易版 的全部内容, 来源链接: utcz.com/z/347697.html

回到顶部