玩蛇网提供最新Python编程技术信息以及Python资源下载!

最简易的python计算器实现源代码

python 培训

最简易的python计算器实现源代码。这是用python编写的一个最简易的计算器实现的源代码。学习python简单使用图形界面是我最喜欢的方向。

python 计算器

因为个人能力有限,不能做更多的优化。还希望大家见谅,随便看看。

#-*- coding:UTF-8-*-

from Tkinter import *

def frame(root, side):
	w = Frame(root)
	w.pack(side=side, expand=YES, fill=BOTH)
	return w
#end of def

def button(root, side, text, command=None):
	w = Button(root, text=text, command=command)
	w.pack(side=side, expand=YES, fill=BOTH)
	return w
#end of def
#www.iplaypython.com

class Calculator(Frame):
	def __init__(self):
		Frame.__init__(self)
		#self.oprion_add('*Font', 'Verdana 12 bold')
		self.option_add('*Font', 'Verdana 12 bold')
		self.pack(expand=YES, fill=BOTH)
		self.master.title('Simple Cal')
		self.master.iconname('calc1')
		
		display = StringVar()
		Entry(self, relief=SUNKEN, textvariable=display).pack(side=TOP, expand=YES, fill=BOTH)
		for key in ('123', '456', '789', '+0.'):
			keyF = frame(self, TOP)
			for char in key:
				button(keyF, LEFT, char, lambda w=display, c=char: w.set(w.get() + c))
		#end of for
		opsF = frame(self, TOP)
		
		for char in '-*/=':
			if char == '=':
				btn = button(opsF, LEFT, char)
				btn.bind('<ButtonRelease-1>', lambda e, s=self, w=display: s.calc(w), '+')
			else:
				btn = button(opsF, LEFT, char, lambda w=display, s='%s '%char: w.set(w.get() + s))

			#end of if
		#end of for	
		clearF = frame(self, BOTTOM)
		button(clearF, LEFT, 'Clr', lambda w=display: w.set(''))
	#end of def
	
	def calc(self, display):
		try:
			display.set(eval(display.get()))
		except:
			display.set('ERROR')
		#end of try and except
	#end of def
#end of class

if __name__ == '__main__':
	Calculator().mainloop()

玩蛇网原创,转载请注明文章出处和来源网址:http://www.iplaypython.com/code/gui/ui2446.html



微信公众号搜索"玩蛇网Python之家"加关注,每日最新的Python资讯、图文视频教程可以让你一手全掌握。强烈推荐关注!

微信扫描下图可直接关注

玩蛇网Python新手QQ群,欢迎加入: ① 240764603 玩蛇网Python新手群
文章发布日期:2016-04-07 15:33 玩蛇网 www.iplaypython.com

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
相关文章推荐
别人正在看
特别推荐
去顶部去底部