本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
本篇文章来自腾讯云 作者:孤独的明月
( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020python学习资料。 )
- 打印商品内容
- 引导用户选择商品
- 验证输入是否合法
- 将用户选择商品通过choice取出来
- 如果钱够,用本金saving减去该商品价格
- 将该商品加入购物车
- 循环遍历购物车里的商品,购物车存放的是已买商品
product_list=[ (‘Mac电脑‘,9500), (‘windows电脑‘,800), (‘法拉利‘,8800000), (‘python入门教程‘,100), (‘华为‘,6000), ] saving=input(‘please input your money:‘) shopping_car=[] if saving.isdigit(): saving=int(saving) while True: #打印商品内容 for i,v in enumerate(product_list,1): print(i,‘>>>>‘,v) #引导用户选择商品 choice=input(‘选择购买商品编号[退出:q]:‘) #验证输入是否合法 if choice.isdigit(): choice=int(choice) if choice>0 and choice<=len(product_list): #将用户选择商品通过choice取出来 p_item=product_list[choice-1] #如果钱够,用本金saving减去该商品价格,并将该商品加入购物车 if p_item[1]<saving: saving-=p_item[1] shopping_car.append(p_item) else: print(‘余额不足,还剩%s‘%saving) print(p_item) else: print(‘编码不存在‘) elif choice==‘q‘: print(‘------------您已经购买如下商品----------------‘) #循环遍历购物车里的商品,购物车存放的是已买商品 for i in shopping_car: print(i) print(‘您还剩%s元钱‘%saving) break else: print(‘invalid input‘)
please input your money:10000000 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:1 (‘Mac电脑‘, 9500) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:1 (‘Mac电脑‘, 9500) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:1 (‘Mac电脑‘, 9500) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:2 (‘windows电脑‘, 800) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:3 (‘法拉利‘, 8800000) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:3 余额不足,还剩1170700 (‘法拉利‘, 8800000) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:1 (‘Mac电脑‘, 9500) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:4 (‘python入门教程‘, 100) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:5 (‘华为‘, 6000) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:6 编码不存在 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:7 编码不存在 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:1 (‘Mac电脑‘, 9500) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:1*4 invalid input 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:3 余额不足,还剩1145600 (‘法拉利‘, 8800000) 1 >>>> (‘Mac电脑‘, 9500) 2 >>>> (‘windows电脑‘, 800) 3 >>>> (‘法拉利‘, 8800000) 4 >>>> (‘python入门教程‘, 100) 5 >>>> (‘华为‘, 6000) 选择购买商品编号[退出:q]:q ------------您已经购买如下商品---------------- (‘Mac电脑‘, 9500) (‘Mac电脑‘, 9500) (‘Mac电脑‘, 9500) (‘windows电脑‘, 800) (‘法拉利‘, 8800000) (‘Mac电脑‘, 9500) (‘python入门教程‘, 100) (‘华为‘, 6000) (‘Mac电脑‘, 9500) 您还剩1145600元钱 Process finished with exit code 0