Python计算房贷

小贝最近打算买一套房子,贷款 100 万,计划分 30 年还完。

已知月利率在 0.41%,假设小贝用 等额本息 还款,我们来写个函数计算一下小贝每月需要还多少钱。

提示:等额本息还款是指还款期内,每月偿还同等数额的贷款(包括本金和利息)。

要求:

函数名为 calc_loan;
函数有 3 个参数,依次为贷款本金 p,还款期数 n 和月利率 r;
函数的返回值为小贝每月应还款金额(本息和)。
注意:定义 3 个参数时,顺序必须依次为 p、n、r。
提示:乘方运算符是 **,2 的 3 次方写作 2 ** 3。
公式:每月偿还本息和=P×R×(1+R)ⁿ÷(1+R)ⁿ-1
P指贷款本金,N指还款期数,R指月利率

根据题目提示的公式设置表达式计算其值即可。

参考链接:


http://www.qfsfc.com/qf_web_dremis/web_house_dir/htmlpage2.htm

https://blog.csdn.net/u014651560/article/details/126839705

def calc_loan(p,n,r):

# https://baike.baidu.com/item/%E7%AD%89%E9%A2%9D%E6%9C%AC%E6%81%AF%E8%BF%98%E6%AC%BE%E6%B3%95/8040344
    money = p*r*(1+r)**n/((1+r)**n-1)

    return money

p=1000000  # 贷款本金
n=30*12   # 期数为 年数*每年的12个月份
r=0.0041  # 利率为 0.41%

# 计算每月还款额,然后打印结果
# http://www.qfsfc.com/qf_web_dremis/web_house_dir/htmlpage2.htm
# https://blog.csdn.net/u014651560/article/details/126839705
money = round(calc_loan(p,n,r),2) # 结果保留两位小数
print("每月需要还"+str(money)+"元。")


img