用Tkinter库制作一个小的【贷款利息计数器】应用

#实现GUI可交互式的界面
*输入年利率
*输入贷款年数
*输入贷款总金
*显示月应付金额
*显示总应付金额
*设置一个Button达到启动计算和显示的作用,放置在右下角

最终样本:

1分析界面的Label、Entry和Button的位置,设计Grid网格如图下

设计思路:

  1. 创建窗口
  2. 放置小物件
  3. 实现变量之间的关系
    下面给出代码Demo:
from tkinter import *#引入库
class LoanCalculator:def __init__(self):window=Tk()#Create windowwindow.title("Loa Calculator")#windo title#Create Label小物件 并赋予文本和 网格位置
#row 和 column是位置参数,sticky可为W E S N 或两者容易组合---为居window位置
#Label(父容器,text=“”)函数--传教label小物件,必须含有一个父容器window
#.grid()是网格管理器
#给出五个常量标签的创建Label(window,text="Annual Interest Rate").grid(row=1,column=1,sticky=W)Label(window, text="Number of Years").grid(row=2, column=1, sticky=W)Label(window, text="Loan Amount").grid(row=3, column=1, sticky=W)Label(window, text="Monthly Payment").grid(row=4, column=1, sticky=W)Label(window, text="Total Payment").grid(row=5, column=1, sticky=W)
#创建StringVar对象---tk库的字符串变量
#Entry()创建输入域,textvariable是文本变量
#输入的数据被传递给self.annualInterestRateVar
#给出三个输入域的创建self.annualInterestRateVar=StringVar()Entry(window,textvariable=self.annualInterestRateVar,justify=RIGHT).grid(row=1,column=2)self.numberOfYearsVar=StringVar()Entry(window,textvariable=self.numberOfYearsVar,justify=RIGHT).grid(row=2,column=2)self.LoanAmountVar=StringVar()Entry(window,textvariable=self.LoanAmountVar,justify=RIGHT).grid(row=3,column=2)
#变量标签的创建             self.monthlyPaymentVar=StringVar()lblMonthlyPayment=Label(window,textvariable=self.monthlyPaymentVar).grid(row=4,column=2,sticky=E)self.totalPaymemtVar=StringVar()lblTotalPaymemt=Label(window,textvariable=self.totalPaymemtVar).grid(row=5,column=2,sticky=E)
#Button(父容器,**args)创建按钮self.command是Button命令,需要在类内部定义后按钮被click可用btComputePayment=Button(window,text="Compute Payment",command=self.computePayment).grid(row=6,column=2,sticky=E)window.mainloop()#循环窗口事件#定义类方法--按钮command--计算数值并且用.set()方法改变数值def computePayment(self):totalPayment=self.gettotalPayment(float(self.LoanAmountVar.get()),float(self.annualInterestRateVar.get())/100,int(self.numberOfYearsVar.get()))monthlyPayment=totalPayment/(12*int(self.numberOfYearsVar.get()))self.monthlyPaymentVar.set(format(monthlyPayment,"10.2f"))#改变其值self.totalPaymemtVar.set(format(totalPayment,"10.2f"))#改变其值def gettotalPayment(self,loanAmount,annualInterestRate,numberOfYears):totalPayment=loanAmount*(1+annualInterestRate)**numberOfYearsreturn totalPayment
LoanCalculator()

注意点:

  • 1StringVar类型对象不能直接参与计算,需用到int()或者float()

    • 2set()方法设置最后的计算值

作者:不喜勿喷,本人只是个初级的python爱好者,望大神指教

Tkinter 库---python小应用 贷款利息计算器相关推荐

  1. 五十二、GUI布局tkinter完善Python小项目

    @Author: Runsen 本次 Python 小项目主要功能:调用电脑摄像头实现拍照,并使用百度 API 接口实现图像识别. 上次完成了API的封装,这次完成GUI的布局.具体成品如下所示. 拍 ...

  2. 无需外源库Python小游戏

    本来想写个解密dll异或加密的脚本,但是发现没什么dll游戏了找dll异或加密更是难上加难 于是打开CSDN寻找好玩的 找到了一个大佬的小游戏教程,做出了一些更改 改后设置一键关闭和跳出分循环不会导致 ...

  3. 基于tkinter库python背单词GUI设计——单词越背越开心

    根据本人背单词的习惯开发的小程序 复制单词信息:格式参考输入栏自带的内容 读取单词,按键1,按此顺序显示在LABEL上 剩下的自己探索吧 每次背单词都要打开编译软件很麻烦,可以试试tkinker打包直 ...

  4. Python小例子——BMR计算器

    # -*- coding: utf-8 -*- """作者:宇轩亚40功能:BMR计算器 """def main():"" ...

  5. python的Tkinter库简单应用——开发一个简易计算器

    利用python的Tkinter库开发一个简易计算器 文章目录 利用python的Tkinter库开发一个简易计算器 前言 一.实验准备 二.开发步骤步骤 1.引入库 2.界面设计 3.关键--实现T ...

  6. Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(计算器简单功能)

    Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(计算器简单功能) 导读 动态演示调用python库的tkinter带你进入GUI世界(计算器简单功能) 目录 ...

  7. Python编写的猜数字小游戏~~~基于Tkinter库

    Python编写猜数字小游戏 编写猜数字小游戏 一.界面 1.PyQt5 2. wxPython 3. PyGTK 二.Tkinter功能 ① 15种核心组件 ② 组件的放置和排版(pack,grid ...

  8. python入门学习之小工具制作系列--02使用tkinter库写一个BMI身体指数检测小程序

    一.小程序检测功能逻辑 即通过输入身高.体重两个数据即可计算自己的BMI身体指数是多少,且对身体状况做相应提醒. 二.小程序使用体验 1,弹出主界面,输入身高,体重数据~ 2,点击计算,输出BMI数据 ...

  9. python入门学习之小工具制作系列--01使用tkinter库封装(人生重开模拟器)小游戏

    一.制作背景: 过年浏览csdn博文时,有看到其他博主的一篇人生重开模拟器的小游戏,将代码拷贝运行后看效果很好,非常有趣.于是就学习使用tkinter库将源代码封装,使其可以成为应用小游戏. 二.人生 ...

最新文章

  1. 注册界面翻译_B站UP主自制的开源OCR翻译器走红Github,用一次就粉了
  2. html form表单提交数据并后台获取
  3. 转:关于CCDISK的优化
  4. html显示假的图片路径,实现自己网站的图片假水印功能
  5. pps+linux版+x64,64位Ubuntu 11.04安装PPS的办法
  6. Android 21mod,熊猫博士小镇合集 Mod
  7. commonJS — DOM操作(for DOM)
  8. STM32F7xx —— ADC
  9. LeetCode 650. 只有两个键的键盘(DP)
  10. 使用Docker安装的Tuleap-aio.查看admin默认密码
  11. win7 64位下自行编译OpenCV2.4.10+CUDA toolkit 5.5的整个过程以及需要注意的问题(opencv+cuda并行计算元素的使用)...
  12. java 7下载_java7下载 v7.0 官方最新版
  13. 开源远程桌面软件_RustDesk_(可自建远程桌面服务器)
  14. Ubuntu虚拟机如何与主机复制粘贴?
  15. php 无限极分类树形图,ThinkPhp 实现 无限极分类及树状结构 附加使用例子
  16. 网络口碑营销分几步完成?网络口碑营销的步骤
  17. PS打不开php,ps打不开未响应怎么办
  18. 什么是对象自身可枚举属性和不可枚举属性
  19. TN和STN的液晶屏制作流程以及工艺介绍
  20. Linux开发工具(3)——gcc/g++

热门文章

  1. 《大学两年的摸爬滚打:新征程》
  2. Ubuntu18.04下的PCL安装(摸爬滚打)
  3. EOS错失DeFi首班车
  4. 惠斯登电桥传感器电路设计技巧,了解一下?
  5. 【ACWing】167. 木棒
  6. 免root运行青龙面版和傻妞机器
  7. python怎么编辑程序_少儿编程:Python系列24——字符串的替换和检索
  8. GetMessage() 函数用法
  9. android零宽空格,零宽字符文本水印原理
  10. 打印机连接正常打印没反应 打印机连接正常但没反应怎么回事?