# 需求说明:
# 编写一个程序,实现购物车管理功能。包括添加商品、删除商品、计算总价等功能。
# 解题思路:
# 1. 数据结构:
# 使用字典存储购物车信息,键为商品名称,值为商品数量和单价等信息。
# 2. 功能实现:
# 添加商品:输入商品名称、数量和单价,添加到字典中。
# 删除商品:输入商品名称,从字典中删除商品。
# 计算总价:遍历购物车字典,计算商品总价。
# 3. 循环:
# 使用循环结构,提供菜单供用户选择操作。
# 4. 异常处理:
# 对用户输入进行异常处理,例如输入非法字符等。
d={} #用于存储商品
w=0 #用于存储购物车中商品总价
k=0 #用于判断购物车中是否为空
while True:
print('---- 购 物 车 ----')
print('| 1.添 加 商 品 |')
print('| 2.删 除 商 品 |')
print('| 3.计 算 总 价 |')
print('| 4.退 出 |')
print('-----------------')
y=eval(input("请输入功能序号:"))
if y==1:
u=str(input("请输入商品名称:"))
i=eval(input("请输入商品数量:"))
o=eval(input("请输入商品单价:"))
d[u]=[i,o] #将对应商品名称(健)的数量(值)和单价(值)储存在一个列表中
w+=i*o #计算商品总价
k+=1 #添加商品k值加1
elif y==2:
if k>0: #判断购物车是否为空
u=str(input("请输入删除商品名称:"))
if u in d: #判断输入的商品名是否在购物车中
del d[u] #删除商品
print("已删除该商品!!!")
k-=1
else:
print("商品不存在!!!")
else:
print("请先添加商品!!!")
elif y==3:
if k>0: #判断购物车是否为空
print(f"当前商品总价为:{w}")
else:
print(f"请先添加商品!!!")
elif y==4:
print("购物系统已退出!!!")
break
else:
print("请输入正确的序号!!!")