python实现购物(小程序)
步骤:
-
打印商品内容
-
引导用户选择商品
-
验证输入是否合法
-
将用户选择商品通过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
欢迎关注公众号:Python爬虫数据分析挖掘,回复【开源源码】免费获取更多开源项目源码
公众号每日更新python知识和【免费】工具
耐得住寂寞,才能登得顶
Gitee码云:https://gitee.com/lyc96/projects