Python3使用Tkinter模块写一个简单计算器

Python3用Tkinter写一个简单计算器

这个计算器及其简单,支持点击按钮输入文本框。用的都是基础知识。
在这里插入图片描述
梅开多度,直接上图

使用到了eval函数,将字符串转化为数学表达式

代码如下:

from tkinter import *

#用于按下等号时显示答案
def calculate():
    str2=eval(tt.get())
    tt.insert(END,'=')
    tt.insert(END, str2)

#创建一个Tk对象
#窗口标题调整窗口大小
root = Tk()
root.title("简单计算器")
root.geometry("400x400")

#创建框架,并调整位置
f1=Frame(root);f1.pack()
f2=Frame(root);f2.pack()
f3=Frame(root);f3.pack()
f4=Frame(root);f4.pack()
f5=Frame(root);f5.pack()

#设置文本框,并实时显示输入情况
Label(f1, text="计算内容").pack()
tt=Entry(f1,textvariable=StringVar())
tt.pack()
tt.delete(0, END)

#按钮位置及其触发事件
b1=Button(f2,text='1',command=lambda : tt.insert(END,'1'))
b1.grid(row=1,column=1,ipadx=6)
b2=Button(f2,text='2',command=lambda : tt.insert(END,'2'))
b2.grid(row=1,column=2,ipadx=6)
b3=Button(f2,text='3',command=lambda : tt.insert(END,'3'))
b3.grid(row=1,column=3,ipadx=6)
b4=Button(f2,text='+',command=lambda : tt.insert(END,'+'))
b4.grid(row=1,column=4,ipadx=6)
b5=Button(f2,text='4',command=lambda : tt.insert(END,'4'))
b5.grid(row=2,column=1,ipadx=6)
b6=Button(f2,text='5',command=lambda : tt.insert(END,'5'))
b6.grid(row=2,column=2,ipadx=6)
b7=Button(f2,text='6',command=lambda : tt.insert(END,'6'))
b7.grid(row=2,column=3,ipadx=6)
b8=Button(f2,text='-',command=lambda : tt.insert(END,'-'))
b8.grid(row=2,column=4,ipadx=6)
b9=Button(f2,text='7',command=lambda : tt.insert(END,'7'))
b9.grid(row=3,column=1,ipadx=6)
b10=Button(f2,text='8',command=lambda : tt.insert(END,'8'))
b10.grid(row=3,column=2,ipadx=6)
b11=Button(f2,text='9',command=lambda : tt.insert(END,'9'))
b11.grid(row=3,column=3,ipadx=6)
b12=Button(f2,text='*',command=lambda : tt.insert(END,'*'))
b12.grid(row=3,column=4,ipadx=6)
b13=Button(f2,text='0',command=lambda : tt.insert(END,'0'))
b13.grid(row=4,column=1,ipadx=6)
b14=Button(f2,text='\\',command=lambda : tt.insert(END,'\\'))
b14.grid(row=4,column=2,ipadx=6)
b15=Button(f2,text='=',command=lambda : calculate())
b15.grid(row=4,column=3,columnspan=5,sticky=E+W)
root.mainloop()
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值