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选择排序算法的实现代码
Nov 21 Python
python多线程操作实例
Nov 21 Python
深入理解python中的atexit模块
Mar 07 Python
Python实现读取字符串按列分配后按行输出示例
Apr 17 Python
python得到windows自启动列表的方法
Oct 14 Python
python中for循环输出列表索引与对应的值方法
Nov 07 Python
Python 使用type来定义类的实现
Nov 19 Python
python随机生成大小写字母数字混合密码(仅20行代码)
Feb 01 Python
Django中从mysql数据库中获取数据传到echarts方式
Apr 07 Python
浅谈keras中的目标函数和优化函数MSE用法
Jun 10 Python
Python Charles抓包配置实现流程图解
Sep 29 Python
Python实现双向链表基本操作
May 25 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
PHP chmod 函数与批量修改文件目录权限
2010/05/10 PHP
删除无限分类并同时删除它下面的所有子分类的方法
2010/08/08 PHP
PHP中调用SVN命令更新网站方法
2015/01/07 PHP
php JWT在web端中的使用方法教程
2018/09/06 PHP
PHP扩展Swoole实现实时异步任务队列示例
2019/04/13 PHP
Extjs中ComboBox加载并赋初值的实现方法
2012/03/22 Javascript
JavaScript检查数字是否为整数或浮点数的方法
2015/06/09 Javascript
jquery不常用方法汇总
2015/07/26 Javascript
jquery自定义右键菜单、全选、不连续选择
2016/03/01 Javascript
基于javascript实现句子翻牌网页版小游戏
2016/03/23 Javascript
IE下JS保存图片的简单实例
2016/07/15 Javascript
javascript 组合按键事件监听实现代码
2017/02/21 Javascript
zTree异步加载展开第一级节点的实现方法
2017/09/05 Javascript
vue+webpack实现异步加载三种用法示例详解
2018/04/24 Javascript
如何通过JS实现转码与解码
2020/02/21 Javascript
微信小程序开发(二):页面跳转并传参操作示例
2020/06/01 Javascript
[50:28]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs KG
2018/04/01 DOTA
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
对python3 一组数值的归一化处理方法详解
2018/07/11 Python
python图像处理入门(一)
2019/04/04 Python
python 实现查找文件并输出满足某一条件的数据项方法
2019/06/12 Python
Python基于gevent实现高并发代码实例
2020/05/15 Python
Python 捕获代码中所有异常的方法
2020/08/03 Python
css3 实现圆形旋转倒计时
2018/02/24 HTML / CSS
html5 canvas-1.canvas介绍(hello canvas)
2013/01/07 HTML / CSS
Tea Collection官网:一家位于旧金山的童装公司
2020/08/07 全球购物
致跳远运动员广播稿
2014/02/11 职场文书
社区两委对照检查材料
2014/08/23 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
2015年度销售个人工作总结
2015/03/31 职场文书
工程质量保证书
2015/05/09 职场文书
锦旗赠语
2015/06/23 职场文书
小学体育队列队形教学反思
2016/02/16 职场文书
Java spring定时任务详解
2021/10/05 Java/Android
Python中Numpy和Matplotlib的基本使用指南
2021/11/02 Python
Redis超详细讲解高可用主从复制基础与哨兵模式方案
2022/04/07 Redis