养老金计算
def calculate_pension_and_medical_v2( base_salary7500, # 起始社平工资元/月请替换为石狮市实际全口径月平均工资 years_paid20, # 养老保险实际缴费年限年 years_until_retirement30, # 从开始缴费到退休的总年限年例如30岁开始交60岁退休总年限为30年 average_index0.6, # 养老保险平均缴费指数最低档为0.6最高为3.0 medical_base_index0.6, # 医疗保险缴费基数指数最低档为0.6最高为3.0 medical_years_paid20, # 医疗保险实际缴费年限年可与养老缴费年限不同 annual_growth_rate0.04, # 社平工资年增长率假设为4% individual_interest_rate0.04, # 个人账户记账利率本次设为4%近年实际约4%左右 discount_rate0.02, # 折现率用于计算缴费在退休时的货币时间价值仅作参考不影响实际缴费总额 months_to_pay139, # 养老金计发月数60岁退休对应139个月 individual_ratio0.08, # 养老保险个人账户计入比例灵活就业人员为8% pension_contribution_ratio0.20, # 灵活就业人员养老保险总缴费比例20% medical_contribution_ratio0.08 # 灵活就业人员医疗保险缴费比例8%各地可能不同 ): 计算灵活就业人员养老保险、医疗保险的缴费情况和退休后养老金。 核心逻辑 1. 退休时上年度社平工资 起始社平工资 × (1 社平工资年增长率) ** (总年限 - 1) 因为从开始缴费到退休共 years_until_retirement 年退休时上年度社会平均工资按 total years 增长。 2. 基础养老金 退休时上年度社平工资 × (1 平均缴费指数) / 2 × 缴费年限 × 1% 3. 个人账户储存额第 year 年缴费计入个人账户的金额按复利累积到退休。 剩余年限 years_until_retirement - year - 1 每年计入金额 当年缴费基数 × 8% × 12 当年缴费基数 当年社平工资 × 平均缴费指数 到退休时的本利和 每年计入金额 × (1 个人账户记账利率) ** 剩余年限 4. 个人账户养老金 个人账户储存额 / 计发月数 5. 总养老金 基础养老金 个人账户养老金 6. 实际缴费总额按每年实际缴纳的养老和医保费用累加。 # 参数合理性校验避免过大或过小的输入 # 养老缴费指数限制在0.6到3.0之间 if average_index 0.6 or average_index 3.0: average_index max(0.6, min(3.0, average_index)) # 医保缴费指数限制在0.6到3.0之间 if medical_base_index 0.6 or medical_base_index 3.0: medical_base_index max(0.6, min(3.0, medical_base_index)) # 实际缴费年限不能超过总年限 if years_paid years_until_retirement: years_paid years_until_retirement # 医保缴费年限不能超过养老缴费年限这里假设医保和养老同时缴纳实际可不同 if medical_years_paid years_paid: medical_years_paid years_paid # 1. 计算退休时上年度社平工资 # 注意这里是按“从开始缴费到退休的总年限”计算而不是只按缴费年限。 # 例如缴费20年后停缴再过10年退休总年限30年社平工资按30年增长。 social_wage_at_retirement base_salary * (1 annual_growth_rate) ** (years_until_retirement - 1) # 2. 计算基础养老金 # 基础养老金公式退休时上年度社平工资 × (1 本人平均缴费指数) ÷ 2 × 缴费年限 × 1% # 缴费年限仍然是实际缴费年限 years_paid而不是总年限。 basic_pension (social_wage_at_retirement * (1 average_index) / 2) * years_paid * 0.01 # 3. 初始化用于累加的变量 individual_account_total 0.0 # 个人账户储存额到退休时的本利和 pension_pay_actual 0.0 # 养老保险实际缴费总额不考虑时间价值 pension_pay_future_value 0.0 # 养老保险缴费在退休时的折现终值可选参考 medical_pay_actual 0.0 # 医疗保险实际缴费总额不考虑时间价值 medical_pay_future_value 0.0 # 医疗保险缴费在退休时的折现终值可选参考 # 4. 逐年计算缴费、个人账户累积 # 循环范围前 years_paid 年实际缴费 for year in range(years_paid): # 4.1 计算当年社平工资 social_wage_year base_salary * (1 annual_growth_rate) ** year # ---- 养老保险缴费部分 ---- # 当年养老缴费基数 当年社平工资 × 养老缴费指数 contribution_base_pension social_wage_year * average_index # 当年实际缴纳养老保险费 缴费基数 × 缴费比例 × 12个月 annual_pension_actual contribution_base_pension * pension_contribution_ratio * 12 pension_pay_actual annual_pension_actual # 累加养老实际缴费总额 # ---- 个人账户计入部分 ---- # 当年计入个人账户的金额 缴费基数 × 个人账户比例 × 12 # 灵活就业人员虽然缴纳20%但只有8%进入个人账户其余进入统筹基金。 annual_individual contribution_base_pension * individual_ratio * 12 # 这笔钱要复利累积到退休。 # 剩余年限 从次年到退休前一年的年数 years_until_retirement - year - 1 # 例如第1年缴费year0总年限30年剩余29年计息29次。 remaining_years years_until_retirement - year - 1 # 个人账户储存额累加当年计入金额 × (1记账利率)^剩余年限 individual_account_total annual_individual * (1 individual_interest_rate) ** remaining_years # ---- 养老保险缴费的折现终值参考用不影响实际总额 ---- # 把每年实际缴纳的金额按折现率换算到退休时点的价值。 pension_pay_future_value annual_pension_actual * (1 discount_rate) ** (years_until_retirement - year - 1) # ---- 医疗保险缴费部分 ---- # 医疗保险通常只在缴费期间缴纳且停缴期间不享受医保待遇。 # 这里假设医保缴费年限为 medical_years_paid可能等于或少于养老缴费年限。 if year medical_years_paid: # 当年医保缴费基数 当年社平工资 × 医保基数指数 contribution_base_medical social_wage_year * medical_base_index # 当年实际缴纳医保费 缴费基数 × 医保缴费比例 × 12 annual_medical_actual contribution_base_medical * medical_contribution_ratio * 12 medical_pay_actual annual_medical_actual # 医保缴费的折现终值参考用 medical_pay_future_value annual_medical_actual * (1 discount_rate) ** ( years_until_retirement - year - 1) # 5. 计算个人账户养老金 # 个人账户养老金 个人账户储存额 ÷ 计发月数 individual_pension individual_account_total / months_to_pay # 6. 汇总结果 total_pension basic_pension individual_pension # 退休后每月总养老金 total_social_security_actual pension_pay_actual medical_pay_actual # 社保总实际投入养老医保 total_social_security_future_value pension_pay_future_value medical_pay_future_value # 总投入折现终值 # 7. 返回所有计算结果 return { social_wage_at_retirement: social_wage_at_retirement, # 退休时上年度社平工资 basic_pension: basic_pension, # 基础养老金 individual_pension: individual_pension, # 个人账户养老金 total_pension: total_pension, # 总养老金 pension_pay_actual: pension_pay_actual, # 养老实际缴费总额 pension_pay_future_value: pension_pay_future_value, # 养老缴费折现终值 medical_pay_actual: medical_pay_actual, # 医保实际缴费总额 medical_pay_future_value: medical_pay_future_value, # 医保缴费折现终值 total_social_security_actual: total_social_security_actual, # 社保总实际投入 total_social_security_future_value: total_social_security_future_value, # 社保总投入折现终值 individual_account_total: individual_account_total # 个人账户储存额退休时 } # 调用示例 if __name__ __main__: # 假设条件 # - 起始社平工资 7500 元/月请替换为石狮市公布的2025年全口径月平均工资 # - 30岁开始缴费缴满20年后停缴再过10年到60岁退休总年限30年 # - 养老和医保均按最低档0.6缴纳 # - 社平工资年增长率4% # - 个人账户记账利率4% result calculate_pension_and_medical_v2( base_salary10000, # 请替换为石狮市最新全口径月平均工资 years_paid10, # 实际缴费20年 years_until_retirement30, # 从开始缴费到退休共30年 average_index3, # 养老最低档 medical_base_index3, # 医保最低档 medical_years_paid20, # 医保也缴费20年注意退休时可能年限不足需另行考虑 annual_growth_rate0.04, # 社平工资年增长率4% individual_interest_rate0.04, # 个人账户记账利率4% pension_contribution_ratio0.20, # 灵活就业养老缴费比例20% medical_contribution_ratio0.08, # 灵活就业医保缴费比例8% months_to_pay139 # 60岁退休计发月数 ) # 输出结果 print( 养老金测算结果 ) print(f退休时上年度社平工资{result[social_wage_at_retirement]:,.2f} 元/月) print(f基础养老金{result[basic_pension]:,.2f} 元/月) print(f个人账户养老金{result[individual_pension]:,.2f} 元/月) print(f总养老金{result[total_pension]:,.2f} 元/月) print() print(f养老实际缴费总额{result[pension_pay_actual]:,.2f} 元) print(f医保实际缴费总额{result[medical_pay_actual]:,.2f} 元) print(f养老缴费总额折现价值{result[pension_pay_future_value]:,.2f} 元) print(f医保缴费总额折现价值{result[medical_pay_future_value]:,.2f} 元) print(f社保总投入养老医保{result[total_social_security_actual]:,.2f} 元) print() print(f个人账户储存额退休时含停缴期间利息{result[individual_account_total]:,.2f} 元)

相关新闻

gpt-researcher 私有语料研究实战:以 Veltrix 2026 战略董事会备忘录为 ground truth 的 hybrid 基准剖析

gpt-researcher 私有语料研究实战:以 Veltrix 2026 战略董事会备忘录为 ground truth 的 hybrid 基准剖析

人工智能AI 应用深度研究AI Agent自主智能体RAG多智能体后端 【免费下载链接】gpt-researcher An autonomous agent that conducts deep research on any data using any LLM providers 项目地址: https://gitcode.com/GitHub_Trending/gp/gpt-researcher 点击查看 …

2026/10/10 11:23:13 阅读更多 →
express-validator 5.x Schema 校验(checkSchema)完整实战指南:对象式声明校验与净化规则

express-validator 5.x Schema 校验(checkSchema)完整实战指南:对象式声明校验与净化规则

后端 【免费下载链接】express-validator An express.js middleware for validator.js. 项目地址: https://gitcode.com/gh_mirrors/ex/express-validator 点击查看 免费下载 本指南围绕 express-validator 5.3.0 版本中提供的 checkSchema() 特性展开,…

2026/10/10 11:22:13 阅读更多 →
Valkey 选型拉锯战:jemalloc vs tcmalloc 深度对决刚测完,5.4 发布让结论再翻一页

Valkey 选型拉锯战:jemalloc vs tcmalloc 深度对决刚测完,5.4 发布让结论再翻一页

Valkey 选型拉锯战:jemalloc vs tcmalloc 深度对决刚测完,5.4 发布让结论再翻一页 【免费下载链接】jemalloc 项目地址: https://gitcode.com/GitHub_Trending/je/jemalloc 社区里那场围绕 Valkey 的分配器对决刚落下帷幕:基准测试把…

2026/10/10 11:22:13 阅读更多 →

最新新闻

热电联产机组联合优化调度:Matlab+YALMIP建模风电消纳与储热电锅炉算例

热电联产机组联合优化调度:Matlab+YALMIP建模风电消纳与储热电锅炉算例

1. 冬季供暖季的弃风困局:热电联产机组到底卡在哪每年供暖季一过,风电场的同事就开始盯着调度曲线叹气:白天风光还好,一到后半夜风速上来了,风电场却得压出力,甚至有整场停机的时候。而另一边,热…

2026/10/10 16:01:52 阅读更多 →
用AI高效阅读鸿蒙源码:仓库定位、调用链与实战技巧

用AI高效阅读鸿蒙源码:仓库定位、调用链与实战技巧

简介:面向鸿蒙OS平台的“阅读”应用鸿蒙版仓库源码,特别适合鸿蒙应用开发者、对小说阅读器实现感兴趣的工程师,以及希望复用书源管理方案的技术人员。工程基于ArkTS编写主要页面与业务逻辑,并搭配svg、png等图标与图片资源&#x…

2026/10/10 16:01:52 阅读更多 →
Java IO流深度解析:字节流字符流、缓冲流与序列化实战指南

Java IO流深度解析:字节流字符流、缓冲流与序列化实战指南

1. 别被IO流的类图吓到:先搞懂设计骨架做Java开发几年后回头看,IO流其实是整个Java生态里设计最经典、也最劝退新手的模块之一。所谓“Java进阶--IO流”,不是让你把几十个类的名字背下来,而是先看清这套体系背后的两个核心设计思想…

2026/10/10 16:01:52 阅读更多 →
Vector v0.51.0 版本深度解析:OTLP 编解码、file source 去遗留化与遥测可靠性加固

Vector v0.51.0 版本深度解析:OTLP 编解码、file source 去遗留化与遥测可靠性加固

可观测性数据工程数据集成日志分析 【免费下载链接】vector A high-performance observability data pipeline. 项目地址: https://gitcode.com/GitHub_Trending/vect/vector 点击查看 免费下载 Vector v0.51.0(发布于 2025-11-04)是面向可观…

2026/10/10 16:01:52 阅读更多 →
Spring AI 2.x 深度技术解析:从架构重构到企业级落地,TaoToken 统一 Key 接入实践

Spring AI 2.x 深度技术解析:从架构重构到企业级落地,TaoToken 统一 Key 接入实践

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

2026/10/10 16:01:52 阅读更多 →
探索AI工具——我的Cursor初体验:从Base URL改到TaoToken

探索AI工具——我的Cursor初体验:从Base URL改到TaoToken

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

2026/10/10 16:00:51 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

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

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

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

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

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

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

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

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

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

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

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

2026/10/10 10:38:42 阅读更多 →