Python只用40行代码编写的计算器实例

yipeiwu_com6年前Python基础

本文实例讲述了Python只用40行代码编写的计算器。分享给大家供大家参考,具体如下:

效果图:

代码:

from tkinter import *
reset=True
def buttonCallBack(event):
  global label
  global reset
  num=event.widget['text']
  if num=='C':
    label['text']="0"
    return
  if num in "=":
    label['text']=str(eval(label['text']))
    reset=True
    return
  s=label['text']
  if s=='0' or reset==True:
    s=""
    reset=False
  label['text']=s+num
#主窗口
root=Tk()
root.wm_title("计算器")
#显示栏1
label=Label(root,text="0",background="white",anchor="e")
label['width']=35
label['height']=2
label.grid(row=1,columnspan=4,sticky=W)
#按钮
showText="789/456*123-0.C+"
for i in range(4):
  for j in range(4):
    b=Button(root,text=showText[i*4+j],width=7)
    b.grid(row=i+2,column=j)
    b.bind("<button-1>",buttonCallBack)
showText="()"
for i in range(2):www.jb51.net
  b=Button(root,text=showText[i],width=7)
  b.grid(row=6,column=2+i)
  b.bind("<button-1>",buttonCallBack)
b=Button(root,text="=")
b.grid(row=6,columnspan=2,sticky="we")
b.bind("<button-1>",buttonCallBack)
root.mainloop()
</button-1></button-1></button-1>

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.jb51.net/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

如何基于python实现画不同品种的樱花树

如何基于python实现画不同品种的樱花树

这篇文章主要介绍了如何基于python实现画不同品种的樱花树,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下  动态生成樱花...

python消费kafka数据批量插入到es的方法

1、es的批量插入 这是为了方便后期配置的更改,把配置信息放在logging.conf中 用elasticsearch来实现批量操作,先安装依赖包,sudo pip install El...

python实现查询IP地址所在地

python实现查询IP地址所在地

使方法一、用IP138数据库查询域名或IP地址对应的地理位置。 #-*- coding:gbk -*- import urllib2 import re try: while...

python 读取txt,json和hdf5文件的实例

一.python读取txt文件 最简单的open函数: # -*- coding: utf-8 -*- with open("test.txt","r",encoding="gbk"...

python 调试冷知识(小结)

python 调试冷知识(小结)

对于 python 代码的调试我们通常都是使用 IDE 自带的调试功能。但是 IDE 提供的调试功能存在局限性,例如在测试服务器上调试代码,但是又不可能在测试服务器上安装 IDE 进行调...