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


Posted in Python onJanuary 30, 2018

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

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

效果图

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

代码

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 相关文章推荐
linux系统使用python监测系统负载脚本分享
Jan 15 Python
Python的Django框架中if标签的相关使用
Jul 15 Python
python模块简介之有序字典(OrderedDict)
Dec 01 Python
python 顺时针打印矩阵的超简洁代码
Nov 14 Python
Django CBV与FBV原理及实例详解
Aug 12 Python
Python自动化导出zabbix数据并发邮件脚本
Aug 16 Python
python实现简单的五子棋游戏
Sep 01 Python
Python类的继承super相关原理解析
Oct 22 Python
Python基于Faker假数据构造库
Nov 30 Python
Python爬虫之Selenium实现窗口截图
Dec 04 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
Dec 17 Python
Python深度学习之实现卷积神经网络
Jun 05 Python
Python Tkinter实现简易计算器功能
Jan 30 #Python
python使用tkinter实现简单计算器
Jan 30 #Python
Python实现简单遗传算法(SGA)
Jan 29 #Python
Python之reload流程实例代码解析
Jan 29 #Python
Python中的默认参数实例分析
Jan 29 #Python
Python使用遗传算法解决最大流问题
Jan 29 #Python
Python subprocess模块详细解读
Jan 29 #Python
You might like
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
PHP编实现程动态图像的创建代码
2008/09/28 PHP
php实现把url转换迅雷thunder资源下载地址的方法
2014/11/07 PHP
php动态生成缩略图并输出显示的方法
2015/04/20 PHP
php微信支付之公众号支付功能
2018/05/30 PHP
JavaScript中Object和Function的关系小结
2009/09/26 Javascript
jQuery的一些特性和用法整理小结
2010/01/13 Javascript
angular中使用路由和$location切换视图
2015/01/23 Javascript
深入理解JavaScript系列(33):设计模式之策略模式详解
2015/03/03 Javascript
JavaScript实现的encode64加密算法实例分析
2015/04/15 Javascript
javascript图片预加载实例分析
2015/07/16 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
原生js实现ajax方法(超简单)
2016/09/20 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
DataTables添加额外的查询参数和删除columns等无用参数实例
2017/07/04 Javascript
Angular4学习笔记之新建项目的方法
2017/07/18 Javascript
解决vue props 拿不到值的问题
2018/09/11 Javascript
浅谈对于react-thunk中间件的简单理解
2019/05/01 Javascript
新手入门js闭包学习过程解析
2019/10/08 Javascript
vue遍历生成的输入框 绑定及修改值示例
2019/10/30 Javascript
Vue作用域插槽实现方法及作用详解
2020/07/08 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
[01:11:46]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第一场 2月23日
2021/03/11 DOTA
python 列表,数组和矩阵sum的用法及区别介绍
2018/06/28 Python
Django实现web端tailf日志文件功能及实例详解
2019/07/28 Python
高考考python编程是真的吗
2020/07/20 Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
2020/12/14 Python
Old Navy加拿大官网:美式休闲服饰品牌
2017/09/26 全球购物
Java servlet面试题
2012/03/04 面试题
文化宣传方案
2014/03/13 职场文书
煤矿开采专业求职信
2014/07/08 职场文书
JavaScript原始值与包装对象的详细介绍
2021/05/11 Javascript
go 实现简易端口扫描的示例
2021/05/22 Golang
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB
德生BCL3000抢先使用感受和评价
2022/04/07 无线电