思路
商品列表
账户金额
选择商品
加入购物车
退出结算
product_list = [
('macbook',12000),
('iphone 11',5500),
('freebuds3',1200),
('watch GT2',1680),
('matepad pro',3200),
('sound x',1999),
('mate x',16999)
]
shoping_car = []
# print(product_list)
while True:
# 用户输入存款,判断是否为字符串
saving = input('目前存款【退出:q】:')
if saving.isdigit():
saving = int(saving)
while True:
# 打印购物车,给商品编号从1开始
for i,v in enumerate(product_list,1):
print(i,'>>>',v)
# 用户输入商品编号,半段是否为字符串,输入q退出
choice = input('请输入您需要购买商品的编号【退出:q】:')
if choice.isdigit():
choice = int(choice)
# 判断输入商品编号,是否符合规则
if choice >=0 and choice <= len(product_list):
p_item = product_list[choice - 1]
#判断商品是否小于存款
if p_item[1] < saving:
saving -= p_item[1]
shoping_car.append(p_item)
else:
print('余额不足,还剩%s'%saving)
print(p_item)
else:
print('您选择的商品编码不存在')
elif choice == 'q':
print('------您购买的商品如下------')
for i in shoping_car:
print(i)
print('您还剩下金额%s'%saving,'元')
break
else:
print('您输入的商品编号有误')
# # print('您选择的商品如下:',p_item[0])
# print('剩余存款:',int(saving)-p_item[1])
break
elif saving == 'q':
print("您已退出存款")
break
else:
print('您输入的存款有误,请重新输入')