news 2026/6/9 17:18:43

收集自己的每日早餐类型(包子,豆浆,面包),统计各类型的食材占比,输出营养早餐搭配建议

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
收集自己的每日早餐类型(包子,豆浆,面包),统计各类型的食材占比,输出营养早餐搭配建议

1. 实际应用场景描述

场景

某上班族希望改善早餐习惯,记录每日早餐类型(如包子、豆浆、面包等),并统计各类型的食材占比,从而分析营养结构,获得科学的早餐搭配建议。

痛点

- 手动记录早餐种类繁琐

- 难以量化不同早餐类型的食材构成

- 缺乏科学依据的营养搭配建议

2. 核心逻辑讲解

1. 输入:日期、早餐类型

2. 映射:每种早餐类型对应一组食材及比例(例如:包子 → 面粉60%、猪肉40%)

3. 统计:按食材类别(谷物、蛋白质、蔬菜等)汇总占比

4. 分析:判断营养是否均衡

5. 输出:食材占比报告与营养搭配建议

3. 代码模块化设计

我们将代码分为:

-

"data_loader.py":数据加载模块

-

"ingredient_mapping.py":早餐类型与食材映射模块

-

"analysis.py":食材占比统计模块

-

"recommendation.py":营养建议生成模块

-

"main.py":主程序入口

3.1

"data_loader.py"

# data_loader.py

import json

def load_breakfast_data(file_path="breakfast_data.json"):

"""

从JSON文件加载每日早餐记录

格式: [{"date": "2024-06-01", "type": "包子"}, ...]

"""

try:

with open(file_path, "r", encoding="utf-8") as f:

data = json.load(f)

return data

except FileNotFoundError:

print(f"文件 {file_path} 未找到,使用示例数据")

return [

{"date": "2024-06-01", "type": "包子"},

{"date": "2024-06-02", "type": "豆浆"},

{"date": "2024-06-03", "type": "面包"},

{"date": "2024-06-04", "type": "包子"},

{"date": "2024-06-05", "type": "豆浆"}

]

3.2

"ingredient_mapping.py"

# ingredient_mapping.py

# 定义早餐类型与食材成分的映射

BREAKFAST_INGREDIENTS = {

"包子": {"谷物": 60, "蛋白质": 40},

"豆浆": {"蛋白质": 100},

"面包": {"谷物": 90, "脂肪": 10}

}

3.3

"analysis.py"

# analysis.py

from collections import defaultdict

from ingredient_mapping import BREAKFAST_INGREDIENTS

def calculate_ingredient_ratio(records):

"""

统计所有早餐记录中各食材的总占比

:param records: list of dict

:return: dict {ingredient: percentage}

"""

ingredient_total = defaultdict(int)

type_count = defaultdict(int)

for r in records:

btype = r["type"]

type_count[btype] += 1

if btype in BREAKFAST_INGREDIENTS:

for ing, ratio in BREAKFAST_INGREDIENTS[btype].items():

ingredient_total[ing] += ratio

# 计算平均占比

total_days = len(records)

avg_ratio = {ing: total / total_days for ing, total in ingredient_total.items()}

return avg_ratio

3.4

"recommendation.py"

# recommendation.py

def nutrition_advice(avg_ratio):

"""

根据食材占比生成营养建议

"""

advice = []

if avg_ratio.get("谷物", 0) < 50:

advice.append("谷物摄入不足,建议增加全麦面包、燕麦等。")

if avg_ratio.get("蛋白质", 0) < 30:

advice.append("蛋白质摄入不足,建议增加鸡蛋、牛奶、豆浆等。")

if avg_ratio.get("蔬菜", 0) == 0:

advice.append("缺少蔬菜类食材,建议搭配蔬菜沙拉或蔬菜汁。")

if not advice:

advice.append("早餐营养较为均衡,继续保持!")

return advice

3.5

"main.py"

# main.py

from data_loader import load_breakfast_data

from analysis import calculate_ingredient_ratio

from recommendation import nutrition_advice

def main():

print("=== 每日早餐类型统计与营养搭配建议系统 ===")

records = load_breakfast_data()

avg_ratio = calculate_ingredient_ratio(records)

print("\n📊 各食材平均占比:")

for ing, ratio in avg_ratio.items():

print(f"{ing}: {ratio:.1f}%")

advice_list = nutrition_advice(avg_ratio)

print("\n💡 营养早餐搭配建议:")

for adv in advice_list:

print(f" - {adv}")

if __name__ == "__main__":

main()

4. README.md

# 每日早餐类型统计与营养搭配建议系统

## 项目简介

基于Python的早餐记录分析工具,帮助统计食材占比并提供科学营养搭配建议。

## 功能

- 导入每日早餐记录(JSON格式)

- 统计各食材平均占比

- 生成营养搭配建议

## 安装与使用

1. 确保已安装 Python 3.7+

2. 准备 `breakfast_data.json` 数据文件(或使用内置示例数据)

3. 运行 `python main.py`

## 数据格式示例 (breakfast_data.json)

json

[

{"date": "2024-06-01", "type": "包子"}

]

## 模块说明

- `data_loader.py`: 数据加载

- `ingredient_mapping.py`: 早餐类型与食材映射

- `analysis.py`: 食材占比统计

- `recommendation.py`: 营养建议生成

- `main.py`: 主程序

5. 使用说明

1. 创建

"breakfast_data.json" 文件,按示例格式填写每日早餐记录

2. 运行:

python main.py

3. 查看控制台输出的食材占比及营养建议

6. 核心知识点卡片

知识点 说明

JSON数据处理 读写结构化数据

字典与defaultdict 高效统计与映射

模块化设计 便于维护与扩展

条件判断分析 业务规则驱动建议

数据映射 将早餐类型映射到食材成分

大数据预处理 真实场景可用Pandas处理多年早餐数据

7. 总结

本项目通过模块化Python编程,解决了早餐营养分析的痛点:

- 自动化:一键统计食材占比

- 科学化:基于食材比例生成建议

- 可扩展:可接入健康APP数据,增加更多食材与营养指标

未来可结合机器学习推荐算法,根据用户体质与目标自动生成个性化早餐方案,打造真正的智能营养管家。

如果你愿意,可以把这个系统升级成带GUI的桌面应用(Tkinter/PyQt)或者Web版(Flask + Bootstrap),并增加热量计算与BMI分析功能,让营养管理更全面。

利用AI高效解决实际问题,如果你觉得这个工具好用,欢迎关注我!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 13:19:54

RAG增强与RAG系统技术报告

文章大纲 从架构设计到企业级实践 摘要 第1章 引言 1.1 传统RAG的核心痛点 1.2 PowerRAG的定位 第2章 PowerRAG增强型框架核心能力 2.1 核心技术亮点 2.2 落地效果提升 2.3 与OceanBase一体化融合 第3章 RAG系统全链路技术架构 3.1 两大核心支柱:文档解析 + 检索策略 3.2 嵌入…

作者头像 李华
网站建设 2026/6/10 8:59:42

基于YOLOv8的恶性疟原虫智能检测系统工程实践 [目标检测完整源码]

文章目录基于YOLOv8的恶性疟原虫智能检测系统工程实践 [目标检测完整源码]一、应用背景与问题定义源码下载与效果演示二、整体技术方案设计三、数据集构建与训练策略四、模型推理与系统部署五、工程实现亮点六、应用前景与拓展方向七、结语基于YOLOv8的恶性疟原虫智能检测系统工…

作者头像 李华
网站建设 2026/6/10 9:02:44

写论文软件哪个好?实测揭秘!宏智树 AI 凭 “真研究” 实力出圈

毕业季的论文焦虑&#xff0c;几乎是每一位学子的必经之路&#xff1a;选题太泛被导师打回、文献堆砌逻辑混乱、数据分析无从下手、查重率居高不下、AI 生成痕迹被系统标红…… 面对五花八门的论文写作工具&#xff0c;“写论文软件哪个好” 成了无数学子的灵魂拷问。 作为深耕…

作者头像 李华
网站建设 2026/6/10 9:10:00

持续同调与深度学习3D点云分类方法【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导&#xff0c;毕业论文、期刊论文经验交流。✅ 专业定制毕设、代码✅ 成品或定制&#xff0c;查看文章底部微信二维码&#xff08;1&#xff09;多类型持续同调特征融合模型的构建与验证三维点云作为…

作者头像 李华
网站建设 2026/6/10 10:37:17

基于多特征融合的深度学习高速铁路预售期购票量预测

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导&#xff0c;毕业论文、期刊论文经验交流。✅ 专业定制毕设、代码✅ 成品或定制&#xff0c;查看文章底部微信二维码&#xff08;1&#xff09;高铁客流数据的时空特征解析与工程化处理 高铁旅客购票…

作者头像 李华
网站建设 2026/6/10 3:49:24

学霸同款9个AI论文软件,自考论文轻松搞定!

学霸同款9个AI论文软件&#xff0c;自考论文轻松搞定&#xff01; 自考论文的“隐形助手”&#xff1a;AI 工具如何让写作更轻松 对于自考学生来说&#xff0c;撰写论文不仅是学术能力的体现&#xff0c;更是通过考试的关键一步。然而&#xff0c;面对繁重的写作任务和严格的格…

作者头像 李华