python计算器实验报告_用Python写个计算器(初级水平)

本文介绍了一个使用Python的Tkinter库创建的简单计算器程序。通过定义框架和按钮,实现了基本的数学运算,包括加、减、乘、除和等于。计算器能够显示计算结果,并处理错误如语法错误和除以零的情况。
摘要由CSDN通过智能技术生成

source:http://www.qiyeku.com/xinwen/1130530.html

from Tkinter import *

def frame(root,side):

w=Frame(root)

w.pack(side=side,expand=YES,fill=BOTH)

return w

def button(root,side,text,command=None):

w=Button(root,text=text,command=command)

w.pack(side=side,expand=YES,fill=BOTH)

return w

class Calculator(Frame):

def __init__(self):

Frame.__init__(self)

self.pack(expand=YES,fill=BOTH)

self.master.title('Simple Calculator')

self.master.iconname('calcl')

display=StringVar()

Entry(self,relief=SUNKEN,textvariable=display).pack(side=TOP,expand=YES,fill=BOTH)

for key in ('123','456','789','-0.',):

deyF=frame(self,TOP)

for char in key:

button(deyF,LEFT,char,lambda w=display,s='%s'%char:w.set(w.get()+s))

opsF=frame(self,TOP)

for char in "+-*/=":

if char=='=':

btn=button(opsF,LEFT,char)

btn.bind("",lambda e,s=self,w=display:s.calc(w),'+')

else:

btn=button(opsF,LEFT,char,lambda w=display,c=char:w.set(w.get()+''+c+''))

clearF=frame(self,BOTTOM)

button(clearF,LEFT,'clear',lambda w=display:w.set(''))

def calc(self,display):

try:

display.set(eval(display.get()))

except SyntaxError:

display.set('ERROR')

except ZeroDivisionError:

display.set('ZeroDivisionError')

if __name__=="__main__":

Calculator().mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值