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通过字典实现购物车案例-用户端
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数