项目34:简易饮食营养信息查询系统 — 《跟着小王学Python·新手》

《跟着小王学Python》 是一套精心设计的Python学习教程,适合各个层次的学习者。本教程从基础语法入手,逐步深入到高级应用,以实例驱动的方式,帮助学习者逐步掌握Python的核心概念。通过开发游戏、构建Web应用、编写网络爬虫、制作桌面软件等多样化项目,学习者可以深入理解并实践Python知识。每周更新1至2篇内容,旨在助力学习者成长为全栈工程师。

作为课程作业或者毕设参考也是不错的选择


文章目录

  • 项目34:简易饮食营养信息查询系统 --- 《跟着小王学Python·新手》
  • 目标
  • 功能
  • 设计
  • 数据结构设计
  • 系统架构设计
  • 实现步骤
  • 代码实现
  • 测试
  • 注意事项
  • 小结


项目34:简易饮食营养信息查询系统 --- 《跟着小王学Python·新手》_java

目标

本项目旨在为新手提供一个简易的饮食营养信息查询系统,通过这个系统,用户可以查询不同食物的营养成分,以便更好地规划自己的饮食。本系统将使用Python语言开发,适合初学者学习如何构建一个简单的查询系统。

项目34:简易饮食营养信息查询系统 --- 《跟着小王学Python·新手》_java_02

功能

  • 查询功能:用户可以输入食物名称,系统返回该食物的营养成分信息。
  • 数据展示:以表格形式展示查询结果,包括热量、蛋白质、脂肪等。
  • 数据更新:管理员可以添加或更新食物的营养信息。

设计

数据结构设计

我们将使用一个简单的字典来存储食物及其营养信息,键为食物名称,值为另一个字典,包含热量、蛋白质、脂肪等信息。

# 示例数据结构
food_nutrients = {
    "苹果": {"热量": 52, "蛋白质": 0.26, "脂肪": 0.17},
    "香蕉": {"热量": 89, "蛋白质": 1.09, "脂肪": 0.33},
    # 更多食物数据...
}

系统架构设计

系统将分为以下几个部分:

  1. 数据存储:使用字典存储食物营养信息。
  2. 查询接口:提供函数接口,根据食物名称查询营养信息。
  3. 用户界面:简单的命令行界面,允许用户输入查询。
  4. 数据更新接口:提供函数接口,允许管理员更新食物营养信息。

实现步骤

  1. 初始化数据:创建一个包含食物营养信息的字典。
  2. 实现查询功能:编写函数,根据用户输入的食物名称查询营养信息。
  3. 实现数据更新功能:编写函数,允许管理员添加或更新食物营养信息。
  4. 创建用户界面:编写代码,创建一个简单的命令行界面,用户可以输入查询。
  5. 测试系统:对系统进行测试,确保查询和更新功能正常工作。

代码实现

# 简易饮食营养信息查询系统

# 数据存储
food_nutrients = {
    "苹果": {"热量": 52, "蛋白质": 0.26, "脂肪": 0.17},
    "香蕉": {"热量": 89, "蛋白质": 1.09, "脂肪": 0.33},
    # 更多食物数据...
}

# 查询功能
def query_nutrients(food_name):
    """根据食物名称查询营养信息"""
    nutrients = food_nutrients.get(food_name)
    if nutrients:
        print(f"{food_name}的营养信息:")
        for nutrient, value in nutrients.items():
            print(f"{nutrient}: {value}")
    else:
        print(f"抱歉,没有找到{food_name}的营养信息。")

# 数据更新功能
def update_nutrients(food_name, nutrients):
    """更新或添加食物营养信息"""
    food_nutrients[food_name] = nutrients
    print(f"{food_name}的营养信息已更新。")

# 用户界面
def main():
    while True:
        print("简易饮食营养信息查询系统")
        print("1. 查询营养信息")
        print("2. 更新营养信息")
        print("3. 退出")
        choice = input("请选择操作:")
        
        if choice == "1":
            food_name = input("请输入食物名称:")
            query_nutrients(food_name)
        elif choice == "2":
            food_name = input("请输入食物名称:")
            nutrients = {}
            nutrients["热量"] = int(input("请输入热量:"))
            nutrients["蛋白质"] = float(input("请输入蛋白质:"))
            nutrients["脂肪"] = float(input("请输入脂肪:"))
            update_nutrients(food_name, nutrients)
        elif choice == "3":
            print("退出系统。")
            break
        else:
            print("无效选项,请重新选择。")

if __name__ == "__main__":
    main()

测试

  1. 查询测试:输入已知的食物名称,检查是否返回正确的营养信息。
  2. 更新测试:更新一个食物的营养信息,然后查询以验证更新是否成功。
  3. 边界测试:输入不存在的食物名称,检查系统是否正确处理。

注意事项

  • 确保输入的食物名称与字典中的键匹配,否则系统将返回没有找到信息的提示。
  • 更新营养信息时,确保输入的数据类型正确,以避免程序错误。

小结

通过本项目,新手可以学习到如何使用Python构建一个简单的查询系统,包括数据存储、函数编写、用户界面设计等基础知识。希望这个项目能够帮助新手更好地理解Python编程,并激发他们进一步学习的兴趣。