一、实际应用场景描述某婚礼策划公司主打标准化婚礼套餐典型套餐结构如下- 场地布置- 摄影摄像- 花艺设计- 主持、化妆等本次简化为三类套餐售价固定但- 各项目成本结构不同- 供应商结算方式不同- 单项利润率差异明显管理层希望- 知道每个套餐到底赚在哪- 识别拖低整体利润的子项- 为定价与供应商谈判提供数据支持二、引入痛点业务与技术视角1️⃣ 业务痛点- 只看“套餐总毛利”忽略结构- 花艺超支但整体仍盈利掩盖问题- 摄影外包价格波动大难追踪2️⃣ 核算痛点- Excel 按项目拆分繁琐- 成本归集口径不统一- 缺乏可复用的利润分析模型3️⃣ 教学痛点- 学生难以理解“收入拆分 → 成本归集 → 分项利润”- 缺乏结构化代码示例三、核心逻辑讲解1️⃣ 套餐收入拆分假设比例项目 收入占比场地 40%摄影 30%花艺 30%实际可按合同或历史数据调整2️⃣ 利润核算公式单项毛利 单项收入 − 单项直接成本单项毛利率 单项毛利 / 单项收入3️⃣ 分析目标- 各子项是否达到目标毛利率- 找出“利润黑洞”- 输出结构化分析结果四、Python 程序模块化设计 项目结构wedding_package_profit/│├── main.py # 程序入口├── models.py # 数据模型├── splitter.py # 套餐收入拆分├── profit.py # 利润核算├── analyzer.py # 利润分析└── README.md1️⃣ models.py数据模型from dataclasses import dataclassdataclassclass Package:name: strtotal_price: floatvenue_cost: floatphoto_cost: floatfloral_cost: float2️⃣ splitter.py收入拆分def split_revenue(package) - dict:按预设比例拆分套餐收入return {venue: package.total_price * 0.40,photo: package.total_price * 0.30,floral: package.total_price * 0.30,}3️⃣ profit.py利润核算def calculate_profit(revenue: dict, costs: dict) - dict:计算各项目毛利与毛利率result {}for key in revenue:revenue_val revenue[key]cost_val costs[key]gross_profit revenue_val - cost_valmargin gross_profit / revenue_val if revenue_val else 0result[key] {revenue: revenue_val,cost: cost_val,profit: gross_profit,margin: margin}return result4️⃣ analyzer.py利润分析def analyze_profit(profit_data: dict, threshold0.30):判断各项目是否达到目标毛利率analysis {}for item, data in profit_data.items():status 达标 if data[margin] threshold else 低于目标analysis[item] statusreturn analysis5️⃣ main.py实操示例from models import Packagefrom splitter import split_revenuefrom profit import calculate_profitfrom analyzer import analyze_profitpackage Package(name春日花园套餐,total_price50000,venue_cost15000,photo_cost12000,floral_cost18000)revenue_split split_revenue(package)costs {venue: package.venue_cost,photo: package.photo_cost,floral: package.floral_cost}profit_data calculate_profit(revenue_split, costs)analysis analyze_profit(profit_data)for item in profit_data:print(f\n项目{item})print(f收入{profit_data[item][revenue]:.2f})print(f成本{profit_data[item][cost]:.2f})print(f毛利{profit_data[item][profit]:.2f})print(f毛利率{profit_data[item][margin]:.2%})print(f分析结论{analysis[item]})五、README 文件示例# 婚策公司套餐分项利润核算练习## 功能说明- 套餐收入按比例拆分- 各子项成本与利润核算- 毛利率分析与预警- 适合项目制教学与实训## 使用方式bashpython main.py## 适用对象- 婚庆行业财务分析- 管理会计课程- 智能会计实训## 注意事项- 收入拆分比例可根据实际调整- 未包含间接费用分摊六、核心知识点卡片模块 核心知识点成本管理 直接成本归集管理会计 分项毛利分析业务建模 套餐收入拆分Python dataclass、字典结构决策支持 阈值判断与预警七、总结本示例从婚策公司真实套餐结构出发通过 Python 实现了一个- ✅ 收入 → 拆分 → 成本 → 利润- ✅ 结构化、可复用的核算模型- ✅ 支持教学目标与经营分析的轻量级利润核算练习工具。其核心价值在于让学生与经营者不仅看到“总账赚钱”还能看清“钱赚在哪里、亏在哪里”如果你愿意可以进一步扩展为- 多套餐对比分析- 间接费用分摊模型- 可视化利润结构报表利用AI解决实际问题如果你觉得这个工具好用欢迎关注长安牧笛