这篇将带来类和继承的一个进阶实例,对于里面的公式可以不用去理解,当然我开头也做了简要的描述,不用大家去查资料看这个公式啥意思。
(说实话我一开始还真就是查资料表示看得一脸懵逼,结果发现公式就是这样知道了不用去理解太多就好hhh)
这个实例可以很好地给我们新手建立对一个简单项目框架的认识如何去利用类和继承去搭建所需要的内容。
#8.4_进阶实例:抵押贷款
def findPayment(loan, r, m):
"""假定loan和r都是浮点数,m是浮点数
返回贷款数为loan、每月利率为r、共m个月情况下的每月还款数"""
return loan*((r*(1+r)**m)/((1+r)**m - 1)) #房贷计算公式_等额本息法_不需理解
class Mortgage(object):
"""用来构建不同类型抵押贷款的抽象类"""
def __init__(self, loan, annRate, months):
"""创建一个抵押贷款"""
self.loan = loan
self.rate = annRate/12.0
self.months = months
self.paid = [0.0] #每月还款数(列表)
self.owed = [loan] #每月月初剩余还款数(列表)
self.payment = findPayment(loan, self