import os

dict01 = {
'iphone' : {
'5999' : {
'总部位于美国' : '价格相对较贵',
},
},
'wahaha' : {
'15' : {
'总部位于中国' : '经济实惠,大众喜爱',
},
},
'MacBook Air' : {
'15000' : {
'苹果公司笔记本' : '性能优越,续航惊人',
},
},
'矿泉水' : {
'2' : {
'产自山区,富含矿物质' : '解渴,人人需要',
},
}, } if os.path.exists('money.txt') :
with open('money.txt', "r", encoding='utf-8-sig') as m01:
budget = m01.read()
budget = budget.strip()
answer = input("当前预算为{0},是否增加预算?(y/n)".format(budget))
if answer == 'y' :
budgetNew = input("你的预算是多少?")
budget = int(budgetNew) + int(budget)
print("目前预算为{0}".format(budget))
else :
budget = input("你的预算是多少?") Continue = False
shoppingCart = []
budget = int(budget) while not Continue :
# budget 购买物资预算
print("商品清单如下:")
# 将商品名称取出,保存到列表中
product = list(dict01.keys())
# 遍历输出所有的商品
for index,list01 in enumerate(product):
print(index,list01,list(dict01[list01].keys())[0] + "元")
choice = input("请输入你的选择是:")
# 判断输出值是否为数字
if choice.isdigit():
# 字符串转换为数字类型
choice = int(choice)
if choice < len(product) and choice >= 0:
# 获取商品价格
shoppingName = product[choice]
# print(shoppingName)
choicePrice = int(list(dict01[shoppingName].keys())[0])
if budget >= choicePrice :
# 选购商品保存在列表中
shoppingCart.append(product[choice])
budget -= choicePrice
print("你的余额还有" + str(budget) + "元。")
else :
print("你买不起这个商品!")
else :
print("没有这个商品,请重新选择。")
break
elif choice == 'q':
Continue = True
print("\n你购买的清单如下:")
print(shoppingCart)
print("你的余额还有" + str(budget) + "元。\n")
with open('money.txt', "w", encoding='utf-8-sig') as m :
m.write(str(budget))
break
else :
print("请重新输入,按q退出!")
break

python通过字典实现购物车案例-用户端的更多相关文章

  1. Python学习笔记_购物车案例

    goods_dic = { "iphone":6000, "ipad":3000, "T-shirt":100, "coffee& ...

  2. python第八天)——购物车作业优化完成

    发现之前的三级菜单代码有BUG现已经修改过来了 购物车程序:启动程序后,输入用户名密码后,如果是第一次登录,让用户输入工资,然后打印商品列表允许用户根据商品编号购买商品用户选择商品后,检测余额是否够, ...

  3. python中字典的用法

    一,字典的简单介绍概念: 字典(dict)是python中唯一的一个映射类型.他是以{ }括起来的键值对组成. 在dict中key是 唯一的. 在保存的时候, 根据key来计算出一个内存地址. 然后将 ...

  4. 第十一章 Odoo 12开发之看板视图和用户端 QWeb

    QWeb 是 Odoo 使用的模板引擎,它基于 XML 来生成 HTML 片断和页面.通过 QWeb可生成内容丰富的看板(Kankan)视图.报表和 CMS 网页.本文中我们将学习QWeb 语法以及如 ...

  5. python基础day2作业:购物车

    #功能:1.可注册账号2.登录买家账号3.可查询编辑购物车里商品4.可以余额充值5.可提示余额不足6.购物车结算 #使用:1.第一次使用先注册账号填写账号金额2.账号金额信息保存在buyer_acco ...

  6. Python 学习 第十篇 CMDB用户权限管理

    Python 学习 第十篇 CMDB用户权限管理 2016-10-10 16:29:17 标签: python 版权声明:原创作品,谢绝转载!否则将追究法律责任. 不管是什么系统,用户权限都是至关重要 ...

  7. 使用python操作文件实现购物车程序

    使用python操作文件实现购物车程序 题目要求如下: 实现思路 始终维护一张字典,该字典里保存有用户账号密码,购物车记录等信息.在程序开始的时候读进来,程序结束的时候写回文件里去.在登录注册的部分, ...

  8. Vue实战-购物车案例

    Vue实战-购物车案例 普通购物车 实现的功能:添加商品到购物车,计算总价 <!DOCTYPE html> <html lang="en"> <hea ...

  9. 练习:python 操作Mysql 实现登录验证 用户权限管理

    python 操作Mysql 实现登录验证 用户权限管理

随机推荐

  1. SpringBoot端口和上下文路径

    可以通过修改application.properties,修改访问的端口号和上下文路径 spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mvc.view.suf ...

  2. 使用C#进行数据库增删改查ADO.NET(一)

    这节讲一下如何使用C#进行数据库的增删改查操作,本节以SQL Server数据库为例. .NET 平台,使用ADO.NET 作为与数据库服务器的桥梁,我们通过ADO.NET就可以使用C#语言操作数据库 ...

  3. Govern Service 基于 Redis 的服务治理平台

    Govern Service 基于 Redis 的服务治理平台(服务注册/发现 & 配置中心) Govern Service 是一个轻量级.低成本的服务注册.服务发现. 配置服务 SDK,通过 ...

  4. 在Visual Studio 中使用git——文件管理-下(六)

    在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...

  5. 详解Redis中两种持久化机制RDB和AOF

    redis是一个内存数据库,数据保存在内存中,但是我们都知道内存的数据变化是很快的,也容易发生丢失.幸好Redis还为我们提供了持久化的机制,分别是RDB(Redis DataBase)和AOF(Ap ...

  6. [Django框架 - 静态文件配置、request对象方法初识、 pycharm链接数据库、ORM实操增删改查、django请求生命周期]

    [Django框架 - 静态文件配置.request对象方法初识. pycharm链接数据库.ORM实操增删改查.django请求生命周期] 我们将html文件默认都放在templates文件夹下 将 ...

  7. Java虚拟机栈和PC寄存器

    PC Register介绍 JVM中的程序计数寄存器(Program Counter Register)中,Register 的命名源于CPU的寄存器,寄存器存储指令相关的现场信息.CPU只有把数据装 ...

  8. appium等待元素

    1.sleep()方法 Thread.sleep(60000)强制等待60s 2.隐式等待implicitlyWait() driver.manage().timeouts().implicitlyW ...

  9. 3.下载CentOS镜像

    下载CentOS镜像 引子: 镜像可以看成是类似ZIP的压缩文件,与rar ZIP压缩包类似,镜像文件是无法直接使用的,需要利用一些虚拟光驱工具 进行解压后才能使用 我们这里就是CentOS系统的镜像 ...

  10. [DB] Hadoop免密登录原理及设置

    情景: 现有两台电脑bigdata111.bigdata112,bigdata111想免密码登录bigdata112 过程: 1.bigdata111生成公钥(用于加密,给别人)和私钥(用于解密,自己 ...