刚学Tkinter两天,边学边写了一个"个人所得税计算器",欢迎大侠们进来指点指点:)
python 代码
-
- """caloulate person taxes"""
- from Tkinter import *
- import sys
-
- class tax(Frame):
- """caloulate personal tax"""
- def __init__(self,parent = None):
- Frame.__init__(self,parent)
- self.pack(side=TOP)
- self.entries = []
- for var_value in field_list:
- row = Frame(self)
- row.pack(side=TOP,fill=X)
- Label(row,text=var_value,width=15,height=2).pack(side=LEFT)
- ent = Entry(row,bg = 'white')
- ent.pack(side=RIGHT,expand=YES,fill=X)
- ent.bind('<Return>',(lambda event:self.fetch_value()))
- self.entries.append(ent)
-
- self.init_btn()
- self.init_result()
-
- def fetch_value(self):
- """fetch valve and get result"""
- result = []
- try:
- for entry in self.entries:
- result.append(entry.get())
-
- res = self.get_result(result[0],result[1])
- self.lab_result["text"] = 'Your Salary is %s .\n Your Tax is %s .\n Your Money is %s .\n' % (res[0],res[1],res[2])
- self.lab_result["bg"] = 'lightyellow'
- self.lab_result["fg"] = 'red'
- except ValueError:
- self.lab_result["bg"] = 'red'
- self.lab_result["fg"] = 'black'
- self.lab_result["text"] = 'Error Occur,Please Test Again.'
-
- def get_result(self,salary,start):
- """caloulate tax"""
- over = float(salary) - float(start)
- tax = ""
- if over <= 500:
- tax = over*0.05
- elif over > 500 and over <= 2000:
- tax = over*0.1 - 25
- elif over > 2000 and over <= 5000:
- tax = over*0.15 - 125
- elif over > 5000 and over <= 20000:
- tax = over*0.2 - 375
- elif over > 20000 and over <= 40000:
- tax = over*0.25 - 1375
- elif over > 40000 and over <= 60000:
- tax = over*0.3 - 3375
- elif over > 60000 and over <= 80000:
- tax = over*0.35 - 6375
- elif over > 80000 and over <= 100000:
- tax = over*0.4 - 10375
- else:
- tax = over*0.45 - 15375
- return [salary,tax,float(salary) - tax]
-
- def init_btn(self):
- """init control button"""
- btn_frame = Frame(self)
- btn_frame.pack(expand=YES,fill=X)
- btn_submit = Button(btn_frame,text='Submit',command=self.fetch_value)
- btn_submit.pack(side=LEFT,expand=YES,fill=X)
- Button(btn_frame,text="Reset",command=self.clear_data).pack(side=LEFT,expand=YES,fill=X)
- Button(btn_frame,text="Quit",command=sys.exit).pack(side=LEFT,expand=YES,fill=X)
-
- def init_result(self):
- """init result label"""
- self.lab_result = Label(self,fg='red',font = ('times',16,'bold'))
- self.lab_result.pack(expand=YES,fill=X)
-
- def clear_data(self):
- """clear old data"""
- for entry in self.entries:
- entry.delete(0,END)
- self.lab_result["text"] = ''
- self.lab_result["bg"] = '
-
-
- field_list = ["Type Your Salary:","Local Tax Start:"]
-
- root = Tk()
- root.title('Personal Income caloulate')
- root.geometry("350x200+250+50")
- per_tax = tax(root)
- root.mainloop()
分享到:
相关推荐
python tkinter 实现简易计算器(学校程序设计实践作业)
使用Python的tkinter实现的最简单的计算器 使用python版本为2.7.14,64bit 可安装pyinstaller后将该源码进行打包成exe后直接在其他机器上运行 本脚本只实现基础功能
Python代码,利用tkinter搭建计算个人所得税计算器。适合初学者学习python基础语言以及tkinter库。运行“个人所得税计算器.py”,即可顺利运行!!!
python tkinter实现 贷款计算器(学校程序设计实践作业)
Python tkinter编写的科学计算器程序,功能多样
使用python tkinter制作计算器源代码,自己思考逻辑,借鉴了一些大神的思路,写了一个不是很完善的计算器
python tkinter 个人贷款计算器 (等额本息+等额本金) 输入:贷款金额,贷款年限,年利率 输出:(等额本息+等额本金)每月还款,总利息支付,本息合计
本人用Python写的一个模拟计算器。运行程序之后会弹出一个类似计算器的软件。输入一些参数即可根据需求计算出结果。适用于一些常用的化学计算公式。物理公式计算等。要用于其他地方。可根据需要进行修改。本代码只是...
主要为大家详细介绍了Python Tkinter实现简易计算器功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Python版9Tkinter的计算器 运用Tkinter编写的计算器,python的Pc端应用界面比其他的更加简洁美观
Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。 Tkinter 的优点和缺点 1. 简单易学,相对于其他的比如 wxPython,PyQt 等等,学起来会非常轻松。 2. 可以使用少量的代码产生...
Python tkinter库开发文档
python tkinter 实现学生通讯录(程序设计实践作业)
Tkinter 在 Python 中创建一个简单的记事本。这个记事本 GUI 将包含各种菜单,如文件和编辑,使用这些菜单可以完成保存文件、打开文件、编辑、剪切和粘贴等所有功能。 设定好了基本的功能选项之后我们再来思考实现...
python tkinter 实现拼图游戏(程序实际实践作业)
用Python tkinter 开发的桌面便签程序 支持拖动、新建、保存、多种颜色主题等丰富多样的功能 详细教程见 https://blog.csdn.net/weixin_48448842/article/details/118046643
用Python Tkinter写的连连看小游戏
教学用python tkinter
使用python tkinter写的登陆窗口,源码需要的可以参考下
用 python tkinter 做的扫雷小游戏,支持标记、问号 详情及教程见 https://blog.csdn.net/weixin_48448842/article/details/117401056