使用tkinter做简单计算器
代码如下:
from tkinter import * #导入tkinter库
root =Tk() #给窗体
root.title('calculator') #设置窗体名字
frm=Frame(root,bg='pink') #新建框架
frm.pack(expand = YES,fill = BOTH) #放置框架
display=StringVar()
e=Entry(frm,textvariable=display) #添加输入框
e.grid(row=,column=,sticky=N,columnspan=,rowspan=) #放置输入框位置 def print_jia():
e.insert(INSERT,'+')
def print_jian():
e.insert(INSERT,'-')
def print_cheng():
e.insert(INSERT,'*')
def print_chu():
e.insert(INSERT,'/')
def print_dengyu():
e.insert(INSERT,'=') Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=,sticky=W) #设置按钮,lambda为匿名函数
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=,sticky=W)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=,sticky=W,rowspan=)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=,rowspan=)
Button(frm,text='',width=,bg='yellow',command= lambda :e.insert(INSERT,'')).grid(row=,column=,rowspan=)
Button(frm,text='/',width=,bg='white',command=print_chu).grid(row=,column=,sticky=E)
Button(frm,text='*',width=,bg='white',command=print_cheng).grid(row=,column=,sticky=E)
Button(frm,text='-',width=,bg='white',command=print_jian).grid(row=,column=,sticky=E)
Button(frm,text='+',width=,bg='white',command=print_jia).grid(row=,column=,sticky=E)
Button(frm,text='=',width=,bg='white',command= lambda :cal(display)).grid(row=,column=,sticky=E)
Button(frm,text='clear',width=,bg='red',command= lambda :display.set('')).grid(row=,column=,sticky=W)
Button(frm,text='',width=,bg='red',command= lambda :e.insert(INSERT,'')).grid(row=,column=)
Button(frm,text='.',width=,bg='red',command= lambda :e.insert(INSERT,'.')).grid(row=,column=)
def cal(display): #eval函数将字符串转化为表达式
display.set(eval(display.get())) print('OK')
root.mainloop() #让程序一直循环
使用tkinter做简单计算器的更多相关文章
- 平时没有怎么用Excel做 加减乘除 计算,猛地发现,其实Excel 是一个很好的简单计算器
平时没有怎么用Excel做 加减乘除 计算,猛地发现,其实Excel 是一个很好的简单计算器
- 一个用WPF做的简单计算器源代码
一.界面设计XAML代码 <Window x:Class="fengjisuanqi.MainWindow" xmlns="http://schemas.micro ...
- 菜鸟学Android编程——简单计算器《一》
菜鸟瞎搞,高手莫进 本人菜鸟一枚,最近在学Android编程,网上看了一些视频教程,于是想着平时手机上的计算器应该很简单,自己何不尝试着做一个呢? 于是就冒冒失失的开撸了. 简单计算器嘛,功能当然很少 ...
- php大力力 [005节] php大力力简单计算器001
2015-08-22 php大力力005. php大力力简单计算器001: 上网看视频,看了半天,敲击代码,如下: <html> <head> <title>简单计 ...
- c#部分---网吧充值系统;简易的闹钟;出租车计费;简单计算器;对战游戏;等额本金法计算贷款还款利息等;随机生成10个不重复的50以内的整数;推箱子;
网吧充值系统namespace ConsoleApplication1 { class Program { struct huiyuan { public string name; public st ...
- js实现简单计算器
效果图: 刚开始做时没考虑到清零和退格两个功能,嘻嘻,后来加的整体与传统计算器比有点小瑕疵. 代码: <!DOCTYPE html><html><head> < ...
- HDOJ 1237题 简单计算器
简单计算器 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...
- 前缀、中缀、后缀表达式以及简单计算器的C++实现
前缀表达式(波兰表达式).中缀表达式.后缀表达式(逆波兰表达式) 介绍 三种表达式都是四则运算的表达方式,用以四则运算表达式求值,即数学表达式的求解. 前缀表达式 前缀表达式是一种没有括号的算术表达式 ...
- C语言,简单计算器【上】
由于工作需要最近在研究PHP扩展,无可避免的涉及到了C语言.从出了学校以后C语言在实际工作中还没有用到过,所以必须要先进行一点复习工作.个人认为对于熟悉一样东西说最好的方法是上手实践.于是便想起了当时 ...
随机推荐
- BugPhobia贡献篇章:团队贡献分值与转会确定
0x01 :无言 0x02 :团队贡献分说明 (1202)冯志睿 54 (1156)李入云 43 (1188)李云涛 56 (1184)马腾跃 26 (1197)钱林琛 60 (1100)王鹿鸣 63 ...
- BETA随笔6/7
前言 我们居然又冲刺了·六 团队代码管理github 站立会议 队名:PMS 530雨勤(组长) 过去两天完成了哪些任务 新方案代码比之前的更简单,但是对场景的要求相应变高了,已经实现,误差感人 代码 ...
- 【流程图】购物车、三级菜单、sed替换
- 第五次作业——python效能分析与几个问题(个人作业)
第五次作业--效能分析与几个问题(个人作业) 前言 阅读了大家对于本课程的目标和规划之后,想必很多同学都跃跃欲试,迫不及待想要提高自身实践能力,那么就从第一个个人项目开始吧,题目要求见下. 阅读 阅读 ...
- 二级制包安装Tomcat 与 RPM包安装Tomcat
1:下载二级制包 wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.0.47/bin/apache-tomcat-8.0.47.tar.g ...
- windwon安装macaca环境
一 安装配置java 1.安装java_jdk ,安装过程中顺带一起安装jre (1)选择[新建系统变量]--弹出“新建系统变量”对话框,在“变量名”文本框输入“JAVA_HOME”,在“ ...
- selenium异常问题汇总(持续更新版)
webdriver启动firefox时如果遇到以下错误,则说明selenium的版本和firefox不兼容了,升级selenium版本就好 org.openqa.selenium.firefox.No ...
- [转贴] IPSEC From 知乎
作者:埃文科技链接:https://zhuanlan.zhihu.com/p/44874772来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 认识IPSec IPSec ...
- Java继承,重写方法时改变方法的访问权限
java中的方法天生具有继承多态特性,这点与C++有很大不同(需要在父类方发上加virtual关键字),但用起来确实方便了许多. 最简单的继承多态 声明一个接口BaseIF,只包含一个方法声明 pub ...
- 【Python】python 2 map() reduce()
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字.输入:['adam', 'LISA', 'barT'],输出:['Adam', 'Lisa', 'Bart']. ...