Python54-55:核心语法-数据容器-字典dict-案例
开发一个购物车管理系统实现商品信息的添加、修改、删除、查询功能。系统使用字典结构存储商品数据通过控制台菜单与用户交互。具体功能如下添加购物车用户根据提示录入商品名称、以及该商品的价格、数量保存该商品信息到购物车。修改购物车要求用户输入要修改的购物车商品名称然后再提示输入该商品的价格、数量输入完成后修改该商品信息。删除购物车要求用户输入要删除的购物车名称根据名称删除购物车中的商品。查询购物车将购物车中的商品信息展示出来格式为商品名称xxx商品价格xxx商品数量xxx。退出购物车 开发一个购物车管理系统实现商品信息的添加、修改、删除、查询功能。系统使用字典结构存储商品数据通过控制台菜单与用户交互。具体功能如下 1. 添加购物车用户根据提示录入商品名称、以及该商品的价格、数量保存该商品信息到购物车。 2. 修改购物车要求用户输入要修改的购物车商品名称然后再提示输入该商品的价格、数量输入完成后修改该商品信息。 3. 删除购物车要求用户输入要删除的购物车名称根据名称删除购物车中的商品。 4. 查询购物车将购物车中的商品信息展示出来格式为商品名称xxx商品价格xxx商品数量xxx。 5. 退出购物车 结构shopping_cart {Meta80: {price: 6999, num: 2}, 鼠标: {...}} shopping_cart {} menu ######### 购物车系统 ######### # 1. 添加购物车 # # 2. 修改购物车 # # 3. 删除购物车 # # 4. 查询购物车 # # 5. 退出购物车 # ############################# # 列编辑模式 AltShift同时按住并将鼠标点到特定位置从上往下拉 print(欢迎使用购物车管理系统 ~) while True: # 1. 制作菜单 print(menu) # 2. 执行的具体操作 choice input(请选择要执行的操作1-5) match choice: case 1: # 添加购物车 goods_name input(请输入商品名称) goods_price float(input(请输入商品价格)) goods_num int(input(请输入商品数量)) # 如果商品存在则不执行添加提示信息 if goods_name in shopping_cart: print(该商品已存在请重新选择 ~) else: shopping_cart[goods_name] {price: goods_price, num: goods_num} print(商品添加完毕 ~) case 2: # 修改购物车 goods_name input(请输入要修改的商品名称) # 如果商品不存在则提示错误信息重新选择 if goods_name not in shopping_cart: print(该商品不存在请重新选择 ~) continue goods_price float(input(请输入商品最新的价格)) goods_num int(input(请输入商品最新的数量)) shopping_cart[goods_name] {price: goods_price, num: goods_num} print(商品修改完毕 ~) case 3: # 删除购物车 goods_name input(请输入要删除的商品名称) # 如果商品不存在则提示错误信息重新选择 if goods_name not in shopping_cart: print(该商品不存在请重新选择 ~) else: del shopping_cart[goods_name] print(商品删除完毕 ~) case 4: # 查询购物车 for goods_name in shopping_cart: goods_info shopping_cart[goods_name] print(f商品名称{goods_name},商品价格{goods_info[price]},商品数量{goods_info[num]}) case 5: # 退出购物车 print(Bye ~) break case _: # 匹配其它所有情况 print(非法操作不支持)声明本篇学习笔记参考黑马程序员相关课程部分素材来源于网络公开资料及本人补充文中为个人整理复盘仅供学习交流使用。

相关新闻

开源实时协作Markdown编辑器HedgeDoc:自托管与权限管理指南

开源实时协作Markdown编辑器HedgeDoc:自托管与权限管理指南

如果你所在的环境里,协作记录一直散落在聊天记录、本地文本和邮箱附件之间,我建议你认真了解一下 HedgeDoc。它是一款开源的、基于 Web 的实时协作 Markdown 编辑器,浏览器打开就能用,也能在自己的服务器上搭建。我把团队内部的技…

2026/10/10 5:44:39 阅读更多 →
变步长扰动观察法光伏MPPT仿真:S-Function与Boost电路实践

变步长扰动观察法光伏MPPT仿真:S-Function与Boost电路实践

上次接了个仿真任务,要求搭一套能随光照强度突变“时刻跟踪”最大功率点的光伏MPPT模型。原以为Simulink里找一个现成模块拖进去就行,结果翻遍标准库也没找到变步长扰动观察法仿真模型,最后老老实实把算法写进s-function模块,配合…

2026/10/10 5:44:39 阅读更多 →
AnyPS5远程串流全攻略:从局域网到广域网,低延迟玩转PS5

AnyPS5远程串流全攻略:从局域网到广域网,低延迟玩转PS5

1. 从“AnyPS5”这个标题说起:它到底想解决什么问题第一次看到“AnyPS5”这个标题,我脑子里蹦出来的第一反应是:这大概率是一个围绕“跨平台串流”或者“远程访问”做文章的项目。为什么这么判断?因为“Any”这个前缀在技术圈里几…

2026/10/10 5:44:39 阅读更多 →

最新新闻

SpringBoot+Vue智能家居系统实战:设备控制、场景联动与避坑指南

SpringBoot+Vue智能家居系统实战:设备控制、场景联动与避坑指南

简介:这是一套基于SpringbootVue的智能家居系统毕业设计资源,面向计算机专业毕业生与需要完成课程设计的学生,主要解决智能家居场景中设备管理、环境监测、远程控制等功能的快速实现。项目采用前后端分离架构,后端以Java和Springb…

2026/10/10 6:24:54 阅读更多 →
微信小程序+SSM+MySQL设备报修系统:从状态机设计到毕设答辩全流程

微信小程序+SSM+MySQL设备报修系统:从状态机设计到毕设答辩全流程

简介:面向高校毕业设计的设备故障报修小程序项目,基于微信小程序SSMMySql实现,包含管理员、用户、维修员三类角色,覆盖报修提交、维修报告、经验分享、实验室管理等功能模块。后台采用Java SSM框架与MySQL数据库,前端使…

2026/10/10 6:24:53 阅读更多 →
ASP+Access网上人才信息管理系统:从环境搭建到毕业设计改造

ASP+Access网上人才信息管理系统:从环境搭建到毕业设计改造

简介:一份面向计算机相关专业毕业设计的 ASPAccess 网上人才信息管理系统资源包,提供可运行的完整源代码与配套论文文档,覆盖用户注册登录、人才档案管理、招聘信息发布、条件检索匹配和管理员权限控制等核心模块,适合课程实训与毕…

2026/10/10 6:24:53 阅读更多 →
Linux下V4L2+Qt USB摄像头采集显示实战指南

Linux下V4L2+Qt USB摄像头采集显示实战指南

简介:本资源是一个面向Linux平台嵌入式与多媒体开发者的USB摄像头实时采集显示项目,聚焦V4L2底层驱动交互与Qt图形界面融合实践,适用于具备C/C基础、熟悉Linux系统编程及Qt框架的中高级开发者,可快速掌握视频设备控制、YUV/RGB图像…

2026/10/10 6:24:53 阅读更多 →
SSM社保系统源码部署与改造:从环境搭建到二次开发实战

SSM社保系统源码部署与改造:从环境搭建到二次开发实战

简介:一套面向SSM课程设计毕业设计场景的JSP社会保险管理系统项目包,覆盖参保人员档案管理、保险金额缴纳、保险金发放、信息查询、缴纳信息发布与系统维护六项核心业务,适合Java Web方向学生作为可运行参考工程。压缩包约24.47MB&#xff0c…

2026/10/10 6:24:53 阅读更多 →
写病原生物学综述别再裸奔了:一份医学生亲测的 AI 工具搭配指南 [特殊字符]

写病原生物学综述别再裸奔了:一份医学生亲测的 AI 工具搭配指南 [特殊字符]

先说身份:医学门类下基础医学一级学科里的病原生物学选手,日常打交道的不是细菌就是病毒、寄生虫,还要啃分子机制。最近接到一个很典型的任务——围绕**“结核分枝杆菌耐药机制与新型抗菌靶点”写一篇 8000 字左右的文献综述,服务…

2026/10/10 6:23:53 阅读更多 →

日新闻

卫星轨道分类全解析:从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/8 15:26:32 阅读更多 →
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/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 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/9 6:17:20 阅读更多 →