Python+tkinter使用40行代码实现计算器功能

向北走
向北走
发布时间:2026-10-13 | 2人浏览过
原创

本文分享了一段仅40行的Python代码,利用内置的tkinter库快速构建一个图形界面计算器。通过简洁的事件绑定与eval函数处理表达式,实现了基础的四则运算及清除功能,适合初学者参考学习GUI开发。

本文分享了一段仅40行的Python代码,利用内置的tkinter库快速构建一个图形界面计算器。通过简洁的事件绑定与eval函数处理表达式,实现了基础的四则运算及清除功能,适合初学者参考学习GUI开发。

偶尔使用脚本编写一些小工具,也是一种不错的实践方式。

程序运行后的界面效果如下图所示。

具体的实现代码如下所示。

from tkinter import * 
reset=True 
def buttonCallBack(event): 
 global label 
 global reset 
 num=event.widget['text'] 
 if num=='C': 
  label['text']="0" 
  return 
 if num in "=": 
  label['text']=str(eval(label['text'])) 
  reset=True 
  return 
 s=label['text'] 
 if s=='0' or reset==True: 
  s="" 
  reset=False 
 label['text']=s+num 
#主窗口 
root=Tk() 
root.wm_title("计算器") 
#显示栏1 
label=Label(root,text="0",background="white",anchor="e") 
label['width']=35 
label['height']=2 
label.grid(row=1,columnspan=4,sticky=W) 
#按钮 
showText="789/456*123-0.C+" 
for i in range(4): 
 for j in range(4): 
  b=Button(root,text=showText[i*4+j],width=7) 
  b.grid(row=i+2,column=j) 
  b.bind("<Button-1>",buttonCallBack) 
showText="()" 
for i in range(2): 
 b=Button(root,text=showText[i],width=7) 
 b.grid(row=6,column=2+i) 
 b.bind("<Button-1>",buttonCallBack) 
b=Button(root,text="=") 
b.grid(row=6,columnspan=2,sticky="we") 
b.bind("<Button-1>",buttonCallBack) 
root.mainloop() 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表