新闻详情

新闻详情

首页 / 资讯中心 / 详情

用 Python 拆解等额本息的利息时间分布:前 10 年付掉一半利息

发布时间:2026/10/1 19:54:09来源:尧图网络
用 Python 拆解等额本息的利息时间分布:前 10 年付掉一半利息
等额本息的月供全程固定但月供里利息与本金的占比每月都在变期初利息占比高、本金占比低越往后反过来。这个占比到底怎么变、总利息在 30 年里如何分布凭感觉很难说清。本文由深工优居依据公开的还款公式整理用 Python 对 200 万元本金、年利率 3.05%、360 期的等额本息做逐期模拟把利息的时间分布完整拆开。## 一、月供结构与首期拆分等额本息月供按年金公式计算。每月利息等于当期剩余本金乘以月利率月供减去利息即为当月归还的本金。P 2_000_000 # 本金 200 万元 annual 0.0305 # 年利率 3.05% r annual / 12 n 360 def annuity(P, r, n): return P * r * (1 r) ** n / ((1 r) ** n - 1) m annuity(P, r, n) first_interest P * r first_principal m - first_interest print(f月供{m:,.2f} 总利息{m*n-P:,.2f}) print(f第1期: 利息{first_interest:,.2f} 本金{first_principal:,.2f} f利息占月供{first_interest/m*100:.2f}%)运行结果月供8,486.11 总利息1,054,999.17 第1期: 利息5,083.33 本金3,402.78 利息占月供59.90%首期 8,486.11 元的月供里利息占 5,083.33 元、本金只占 3,402.78 元利息占比接近六成。这就是等额本息期初「还得不少、本金降得慢」的直接原因。## 二、逐期模拟累计利息的里程碑逐期循环模拟摊还过程在 60、120、180、240、300 期各设一个观察点记录累计利息与剩余本金。bal P total_int 0.0 marks {60: None, 120: None, 180: None, 240: None, 300: None, 360: None} for k in range(1, n 1): interest bal * r principal m - interest bal - principal total_int interest if k in marks: marks[k] (total_int, bal) T total_int for k, (cum, balm) in marks.items(): print(f第{k}期累计: 利息{cum:,.2f} 占总利息{cum/T*100:.2f}% f剩余本金{balm:,.2f})运行结果第60期累计: 利息288,911.50 占总利息27.38% 剩余本金1,779,744.97 第120期累计: 利息541,587.26 占总利息51.34% 剩余本金1,523,254.21 第180期累计: 利息752,065.91 占总利息71.29% 剩余本金1,224,566.32 第240期累计: 利息913,405.27 占总利息86.58% 剩余本金876,739.16 第300期累计: 利息1,017,521.11 占总利息96.45% 剩余本金471,688.47 第360期累计: 利息1,054,999.17 占总利息100.00% 剩余本金0.00第 10 年末第 120 期累计利息 541,587.26 元恰好超过总利息 1,054,999.17 元的一半达到 51.34%而此时 200 万元本金只还掉约 47.68 万元。与之对应第 300 期之后整个后段 60 期只贡献 3.55% 的利息。## 三、每 5 年一段的利息分布把 360 期按每 60 期5 年分成 6 段统计各段利息占总利息的比例。band {} bal P for k in range(1, n 1): interest bal * r bal - (m - interest) b (k - 1) // 60 band[b] band.get(b, 0.0) interest for b in range(6): seg band[b] print(f第{b*51}~{(b1)*5}年: 利息{seg:,.2f} 占比{seg/T*100:.2f}%) print(f前10年合计占比{(band[0]band[1])/T*100:.2f}%) print(f后10年合计占比{(band[4]band[5])/T*100:.2f}%)运行结果第1~5年: 利息288,911.50 占比27.38% 第6~10年: 利息252,675.77 占比23.95% 第11~15年: 利息210,478.64 占比19.95% 第16~20年: 利息161,339.37 占比15.29% 第21~25年: 利息104,115.84 占比9.87% 第26~30年: 利息37,478.06 占比3.55% 前10年合计占比51.34% 后10年合计占比13.42%六个段的占比依次为 27.38%、23.95%、19.95%、15.29%、9.87%、3.55%逐段递减且降幅越来越陡。前 10 年合计 51.34%后 10 年合计仅 13.42%首尾两段的差距接近 7.7 倍。## 四、结论利息占比逐年走低的原因只有一个它按剩余本金计息而剩余本金在月供的持续摊还下逐期下降。对这一分布的实际理解是——等额本息前期的月供里利息占比高这是摊还结构决定的数学性质越到后期同样一笔月供中归还本金的份额越高。中途结清的场景可结合此分布估算已付利息与剩余本金提前还款的测算方法可参见本系列此前文章。以上测算基于 3.05% 的单一利率假设实际执行利率与还款日期以按揭合同约定为准。本文测算过程由深工优居依据公开资料整理并复核代码可直接复现文中全部数字。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Claude Code 换模型后请求失败?检查 Base URL 与 Key 配置 2026/10/1 19:54:05

Claude Code 换模型后请求失败?检查 Base URL 与 Key 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
如何防止跨站WebSocket劫持?ASCILINE的Origin校验+静态文件白名单安全设计解析 2026/10/1 19:54:04

如何防止跨站WebSocket劫持?ASCILINE的Origin校验+静态文件白名单安全设计解析

如何防止跨站WebSocket劫持?ASCILINE的Origin校验静态文件白名单安全设计解析 【免费下载链接】ASCILINE A high-performance ASCII video rendering engine featuring real-time WebSocket binary streaming and an isolated compiler for serverless static gener…

阅读更多 →
算法复杂度分析:O与θ到底怎么选?一文讲透符号边界 2026/10/1 19:54:04

算法复杂度分析:O与θ到底怎么选?一文讲透符号边界

“算法复杂度分析”这几个字,大概是我做技术这些年里被问得最多的一类话题。不管是带新人、做代码评审,还是自己设计批量任务方案,最后都会被同一个问题卡住:这个算法,数据规模翻个十倍,还扛得住吗&#xf…

阅读更多 →
Loop Engineering(循环工程):用 TaoToken 统一 Key 打通多模型循环调用链路 2026/10/1 19:54:04

Loop Engineering(循环工程):用 TaoToken 统一 Key 打通多模型循环调用链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
LeetCode 1680:二进制拼接的位运算递推与取模溢出实战解析 2026/10/1 19:54:03

LeetCode 1680:二进制拼接的位运算递推与取模溢出实战解析

刷LeetCode刷到1680题的时候,我第一反应是:这不就是把1到n的二进制串拼起来,转成十进制,再取个模吗?字符串拼接、进制转换、取模,三步走完,完事。直到我在本地把暴力版和位运算版分别跑了一遍&a…

阅读更多 →
工程车辆目标检测数据集实战:YOLOv8训练与避坑指南 2026/10/1 19:53:56

工程车辆目标检测数据集实战:YOLOv8训练与避坑指南

简介:这份工程车辆目标检测数据集面向建筑工地智能监控、智能交通与自动驾驶环境感知等方向的算法开发者与高校研究者,聚焦混凝土搅拌车、自卸卡车、挖掘机三类常见工程车辆的识别需求。资源包共902个文件,以450张JPEG实景图片和450个YOLO格式…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉