Python简易计算器制作方法代码详解


Posted in Python onOctober 31, 2019

主要用到的工具是Python中的Tkinter库

比较简单

直接上图形界面和代码

Python简易计算器制作方法代码详解

引用Tkinter库

from tkinter import *

建立主窗口对象

window=Tk() #设置窗口对象
window.title('counting machine')
window.geometry("350x280")
window['bg']='red'

建立标签框以及标签(将运算字符串显示在上面)

frame=LabelFrame(window,bg='yellow',width=350,height=50)
frame.pack()
frame.place(x=0,y=0)
label=Label(frame,text="1+1=2",height=3,width=50,bg='yellow')
label.pack() #显示框

设置全局变量字符串s,按一个按钮,将按钮对应的运算符加到这个字符串s中,最后利用eval函数进行计算。

global s
s=""

按钮0-9以及小数点的实现(大致思路都是一样的)

#按钮.
def figure_dot():
  global s
  s=s+"."
  label.config(text=s)
btn0=Button(window,text=".",width=4,command=figure_dot,bg='yellow')
btn0.place(x=150,y=220) #按钮.
#按钮0
def figure_0():
  global s
  s=s+"0"
  label.config(text=s)
btn0=Button(window,text="0",width=4,command=figure_0,bg='yellow')
btn0.place(x=80,y=220) #按钮0
#按钮1
def figure_1():
  global s
  s=s+"1"
  label.config(text=s)
btn1=Button(window,text="1",width=4,command=figure_1,bg='yellow')
btn1.place(x=10,y=80) #按钮1
#按钮2
def figure_2():
  global s
  s=s+"2"
  label.config(text=s)
btn2=Button(window,text="2",width=4,command=figure_2,bg='yellow')
btn2.place(x=80,y=80)#按钮2
#按钮3
def figure_3():
  global s
  s=s+"3"
  label.config(text=s)
btn3=Button(window,text="3",width=4,command=figure_3,bg='yellow')
btn3.place(x=150,y=80)#按钮3
#按钮4
def figure_4():
  global s
  s=s+"4"
  label.config(text=s)
btn4=Button(window,text="4",width=4,command=figure_4,bg='yellow')
btn4.place(x=10,y=130)#按钮4
#按钮5
def figure_5():
  global s
  s=s+"5"
  label.config(text=s)
btn5=Button(window,text="5",width=4,command=figure_5,bg='yellow')
btn5.place(x=80,y=130)#按钮5
#按钮6
def figure_6():
  global s
  s=s+"6"
  label.config(text=s)
btn6=Button(window,text="6",width=4,command=figure_6,bg='yellow')
btn6.place(x=150,y=130)#按钮6
#按钮7
def figure_7():
  global s
  s=s+"7"
  label.config(text=s)
btn7=Button(window,text="7",width=4,command=figure_7,bg='yellow')
btn7.place(x=10,y=180)#按钮7
#按钮8
def figure_8():
  global s
  s=s+"8"
  label.config(text=s)
btn8=Button(window,text="8",width=4,command=figure_8,bg='yellow')
btn8.place(x=80,y=180)#按钮8
#按钮9
def figure_9():
  global s
  s=s+"9"
  label.config(text=s)
btn9=Button(window,text="9",width=4,command=figure_9,bg='yellow')
btn9.place(x=150,y=180)#按钮9
运算符号的实现(±*/)

#加法按钮
def figure_addition():
  global s
  s=s+"+"
  label.config(text=s)
btn_add=Button(window,text="+",width=4,command=figure_addition,bg='yellow')
btn_add.place(x=220,y=80)#加法按钮
#减法按钮
def figure_subtraction():
  global s
  s=s+"-"
  label.config(text=s)
btn_sub=Button(window,text="-",width=4,command=figure_subtraction,bg='yellow')
btn_sub.place(x=220,y=130)#减法按钮
#乘法按钮
def figure_multiplication():
  global s
  s=s+"*"
  label.config(text=s)
btn_multi=Button(window,text="*",width=4,command=figure_multiplication,bg='yellow')
btn_multi.place(x=290,y=80)#乘法按钮
#除法按钮
def figure_division():
  global s
  s=s+"/"
  label.config(text=s)
btn_divi=Button(window,text="/",width=4,command=figure_division,bg='yellow')
btn_divi.place(x=290,y=130)#除法按钮

清空窗口按钮的实现

#清空按钮
def figure_clear():
  global s
  s=""
  label.config(text=s)
btn_clear=Button(window,text="clear",width=4,command=figure_clear,bg='yellow')
btn_clear.place(x=220,y=180)#清空按钮

结果输出的实现(eval函数)

#结果按钮
def figure_value():
  global s
  x=eval(s)
  s=str(x)
  label.config(text=s)
btn_value=Button(window,text="=",width=4,command=figure_value,bg='yellow')
btn_value.place(x=290,y=180)

颜色变换的实现(红变粉)

def figure_colorchange():
  window.config(bg="pink")
btn_value=Button(window,text="color",width=4,command=figure_colorchange,bg='yellow')
btn_value.place(x=10,y=220)#改变颜色
window.mainloop()

变换后

Python简易计算器制作方法代码详解

这个简易计算器也就实现了,当然也可以加入其他的功能,如开方,乘幂等功能。

总结

以上所述是小编给大家介绍的Python简易计算器制作方法代码详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
利用python打印出菱形、三角形以及矩形的方法实例
Aug 08 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
Sep 14 Python
python+splinter自动刷新抢票功能
Sep 25 Python
Django时区详解
Jul 24 Python
django数据模型(Model)的字段类型解析
Dec 25 Python
pytorch ImageFolder的覆写实例
Feb 20 Python
Python网页解析器使用实例详解
May 30 Python
Python爬虫如何应对Cloudflare邮箱加密
Jun 24 Python
python 模拟登陆github的示例
Dec 04 Python
深度学习详解之初试机器学习
Apr 14 Python
常用的Python代码调试工具总结
Jun 23 Python
python函数的两种嵌套方法使用
Apr 02 Python
python3 pillow模块实现简单验证码
Oct 31 #Python
利用Python校准本地时间的方法教程
Oct 31 #Python
python实现计算器功能
Oct 31 #Python
python中的Elasticsearch操作汇总
Oct 30 #Python
django实现用户注册实例讲解
Oct 30 #Python
详解Django CAS 解决方案
Oct 30 #Python
详解使用django-mama-cas快速搭建CAS服务的实现
Oct 30 #Python
You might like
MyEclipse常用配置图文教程
2014/09/11 PHP
ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法
2014/10/30 PHP
jquery刷新页面的实现代码(局部及全页面刷新)
2011/07/11 Javascript
javascript开发随笔二 动态加载js和文件
2011/11/25 Javascript
JS获取Table中td值的方法
2015/03/19 Javascript
jquery.Jcrop结合JAVA后台实现图片裁剪上传实例
2016/11/05 Javascript
js canvas仿支付宝芝麻信用分仪表盘
2016/11/16 Javascript
js微信扫描二维码登录网站技术原理
2016/12/01 Javascript
Angular2平滑升级到Angular4的步骤详解
2017/03/29 Javascript
vue中v-for加载本地静态图片方法
2018/03/03 Javascript
JavaScript查看代码运行效率console.time()与console.timeEnd()用法
2019/01/18 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
jQuery利用cookie 实现本地收藏功能(不重复无需多次命名)
2019/11/07 jQuery
python中精确输出JSON浮点数的方法
2014/04/18 Python
Python对两个有序列表进行合并和排序的例子
2014/06/13 Python
python实现根据主机名字获得所有ip地址的方法
2015/06/28 Python
python 中的divmod数字处理函数浅析
2017/10/17 Python
python 设置文件编码格式的实现方法
2017/12/21 Python
Python使用progressbar模块实现的显示进度条功能
2018/05/31 Python
python模糊图片过滤的方法
2018/12/14 Python
python开发之anaconda以及win7下安装gensim的方法
2019/07/05 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
python3安装OCR识别库tesserocr过程图解
2020/04/02 Python
在ipython notebook中使用argparse方式
2020/04/20 Python
Selenium及python实现滚动操作多种方法
2020/07/21 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
HTML5使用drawImage()方法绘制图像
2014/06/23 HTML / CSS
微软澳洲官方网站:Microsoft Australia
2017/01/10 全球购物
我们是伦敦女孩:WalG
2018/01/08 全球购物
幼师自我鉴定范文
2013/10/01 职场文书
信息专业本科生个人的自我评价
2013/10/28 职场文书
群众路线教育实践活动剖析材料
2014/09/30 职场文书
入党积极分子自我批评思想汇报
2014/10/10 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书
php 原生分页
2021/04/01 PHP
解决flex布局中子项目尺寸不受flex-shrink限制
2022/05/11 HTML / CSS