使用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语言在实际工作中还没有用到过,所以必须要先进行一点复习工作.个人认为对于熟悉一样东西说最好的方法是上手实践.于是便想起了当时 ...
随机推荐
- 互评Beta版本(Hello World!——SkyHunter)
1 基于NABCD评论作品,及改进建议 SkyHunter这款游戏我很喜欢,小时候总玩飞机类的游戏,这款游戏我上课的时候试玩了,在我电脑上运行是很好玩的,音乐震撼,画面玄幻,富有金属音乐的味道,游戏内 ...
- 谷歌地图api 开发 (转载)
https://www.cnblogs.com/520lin/p/5800024.html
- vue 中ref 的使用注意事项
最近看别人的项目发现有些语法不能理解,所以百度进行了学习.现在总结一下. ref 有两种用法 1.ref 加在普通的元素上,用this.ref.name 获取到的是dom元素 2.ref 加在子组件上 ...
- Linux网卡配置文件路径是什么?要使服务器上外网,必须满足的条件有哪些?需要配置什么?
Linux网卡配置文件路径是什么?要使服务器上外网,必须满足的条件有哪些?需要配置什么? 答: 网卡配置文件路径:/etc/sysconfig/network-scripts/ifcfg- ...
- Sprint2-2.0
1.开始一个新的冲刺: 起止:2016.6.1~2016.6.14 按照以下过程进行 ProductBacklog:继续向下细化 Sprint 计划会议:确定此次冲刺要完成的目标 Sprint Bac ...
- HDU 2086 A1 = ?
http://acm.hdu.edu.cn/showproblem.php?pid=2086 Problem Description 有如下方程:Ai = (Ai-1 + Ai+1)/2 - Ci ( ...
- Windows 10 正式版原版ISO镜像
Win10正式版32位简体中文版(含家庭版.专业版)文件名: cn_windows_10_multiple_editions_x86_dvd_6846431.isoSHA1:21B824F402927 ...
- 【高级】PHP-FPM和Nginx的通信机制
PHP-FPM 介绍 CGI 协议与 FastCGI 协议 每种动态语言( PHP,Python 等)的代码文件需要通过对应的解析器才能被服务器识别,而 CGI 协议就是用来使解释器与服务器可以互相通 ...
- how to know iframe is loaded in js
how to know iframe is loaded in js ??? iframe & HTTPS & CORS https://iframe.xgqfrms.xyz/eapp ...
- Scalable IO in Java【java高效IO】
第一次翻译,如有错误,请指正 1.Outline 大纲Scalable network services 高效网络服务 Event-driven processing 事件驱动处理 Reactor ...