首页 > 开发 > Python > 正文

python实现计算器功能

2020-07-28 14:22:00
字体:
来源:转载
供稿:网友

本文实例为大家分享了python计算器的具体代码,供大家参考,具体内容如下

主要用到的工具是Python中的Tkinter库
比较简单
直接上图形界面和代码

引用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 ss=""

按钮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) #按钮.#按钮0def 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#按钮1def 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#按钮2def 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#按钮3def 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#按钮4def 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#按钮5def 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#按钮6def 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#按钮7def 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#按钮8def 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#按钮9def 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)#除法按钮
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表