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

yipeiwu_com5年前Python基础

本文实例为大家分享了40行Python代码实现计算器功能,供大家参考,具体内容如下

偶尔用脚本写点东西也是不错的。

效果图

代码

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设计】。

相关文章

python中的多重继承实例讲解

python中的多重继承实例讲解

python和C++一样,支持多继承。概念虽然容易,但是困难的工作是如果子类调用一个自身没有定义的属性,它是按照何种顺序去到父类寻找呢,尤其是众多父类中有多个都包含该同名属性。 对经典类...

重命名批处理python脚本

将Copy of ********.bmp或者Copy of Copy of ********.bmp 此类文件统一命名为********0.bmp 或者********00.bmp等格式...

使用pygame写一个古诗词填空通关游戏

使用pygame写一个古诗词填空通关游戏

之前写的诗词填空的游戏支持python2,现在对程序进行了修改,兼容支持python2和python3,附下效果图。 下面是两个主程序 idiom_lib.py代码: # -*-...

python将html转成PDF的实现代码(包含中文)

前提: 安装xhtml2pdf https://pypi.python.org/pypi/xhtml2pdf/下载字体:微软雅黑;给个地址:https://www.jb51.net/fo...

opencv转换颜色空间更改图片背景

本文实例为大家分享了opencv转换颜色空间更改图片背景的具体代码,供大家参考,具体内容如下 思路: 1、将BGR转换为HSV颜色空间 2、设置掩模 3、位运算 这里以更改摩托罗拉l...