Python中的利息计算器查找总金额以及每年支付的金额

问题描述

我的目标是找到五年后的贷款总额,以及每年还清多少钱。

到目前为止,我的代码

years = 5

loan = 50000

interest = 0.05


for year in range(years):
    loan += loan * interest
    print(loan)

这是每年找到年度付款的正确方法吗?

sum = loan / years + loan * interest

解决方法

如果您不想自己进行计算,则可以使用numpy。

>>> import numpy as np
>>> np.pmt(.05,5,-50000)
11548.739906413395

上面给出了年度付款。

因此,第一年支付的本金和利息金额为:

兴趣= 50000 * .05

principal_paid = 11548.74-利息

这是一个执行此操作的小程序。

import numpy as np

interest = .05
principal = 50000
years = 5

annual_pay = np.pmt(interest,years,-principal)

print('{}{:>10}{:>10}{:>10}'.format('year','interest','retired','balance'))

for yr in range(1,6):
    i = interest * principal
    retired_prin = annual_pay - i
    principal = principal - retired_prin
    print('{:>4}{:>10.2f}{:>10.2f}{:>10.2f}'
          .format(yr,i,retired_prin,principal))
    

此打印:

year  interest   retired   balance
   1   2500.00   9048.74  40951.26
   2   2047.56   9501.18  31450.08
   3   1572.50   9976.24  21473.85
   4   1073.69  10475.05  10998.80
   5    549.94  10998.80     -0.00