python-利用python写一个购物小程序

一、shopping思路

  1. 打印商品内容
  2. 引导用户选择商品
  3. 验证输入是否合法
  4. 将用户选择商品通过choice取出来
  5. 如果钱够,用本金saving减去该商品价格
  6. 将该商品加入购物车
  7. 循环遍历购物车里的商品,购物车存放的是已买商品
  1.  
    product_list=[
  2.  
    ('Mac电脑',9500),
  3.  
    ('windows电脑',800),
  4.  
    ('法拉利',8800000),
  5.  
    ('python入门教程',100),
  6.  
    ('华为',6000),
  7.  
     
  8.  
    ]
  9.  
    saving=input('please input your money:')
  10.  
    shopping_car=[]
  11.  
    if saving.isdigit():
  12.  
    saving=int(saving)
  13.  
    while True:
  14.  
    #打印商品内容
  15.  
    for i,v in enumerate(product_list,1):
  16.  
    print(i,'>>>>',v)
  17.  
     
  18.  
    #引导用户选择商品
  19.  
    choice=input('选择购买商品编号[退出:q]:')
  20.  
     
  21.  
    #验证输入是否合法
  22.  
    if choice.isdigit():
  23.  
    choice=int(choice)
  24.  
    if choice>0 and choice<=len(product_list):
  25.  
    #将用户选择商品通过choice取出来
  26.  
    p_item=product_list[choice-1]
  27.  
     
  28.  
    #如果钱够,用本金saving减去该商品价格,并将该商品加入购物车
  29.  
    if p_item[1]<saving:
  30.  
    saving-=p_item[1]
  31.  
     
  32.  
    shopping_car.append(p_item)
  33.  
     
  34.  
    else:
  35.  
    print('余额不足,还剩%s'%saving)
  36.  
    print(p_item)
  37.  
    else:
  38.  
    print('编码不存在')
  39.  
    elif choice=='q':
  40.  
    print('------------您已经购买如下商品----------------')
  41.  
    #循环遍历购物车里的商品,购物车存放的是已买商品
  42.  
    for i in shopping_car:
  43.  
    print(i)
  44.  
    print('您还剩%s元钱'%saving)
  45.  
    break
  46.  
    else:
  47.  
    print('invalid input')

运行输出结果:

  1.  
    please input your money:10000000
  2.  
    1 >>>> ('Mac电脑',9500)
  3.  
    2 >>>> ('windows电脑',800)
  4.  
    3 >>>> ('法拉利',8800000)
  5.  
    4 >>>> ('python入门教程',100)
  6.  
    5 >>>> ('华为',6000)
  7.  
    选择购买商品编号[退出:q]:1
  8.  
    ('Mac电脑',9500)
  9.  
    1 >>>> ('Mac电脑',6000)
  10.  
    选择购买商品编号[退出:q]:2
  11.  
    ('windows电脑',800)
  12.  
    1 >>>> ('Mac电脑',6000)
  13.  
    选择购买商品编号[退出:q]:3
  14.  
    ('法拉利',8800000)
  15.  
    1 >>>> ('Mac电脑',6000)
  16.  
    选择购买商品编号[退出:q]:3
  17.  
    余额不足,还剩1170700
  18.  
    ('法拉利',6000)
  19.  
    选择购买商品编号[退出:q]:4
  20.  
    ('python入门教程',100)
  21.  
    1 >>>> ('Mac电脑',6000)
  22.  
    选择购买商品编号[退出:q]:5
  23.  
    ('华为',6000)
  24.  
    1 >>>> ('Mac电脑',6000)
  25.  
    选择购买商品编号[退出:q]:6
  26.  
    编码不存在
  27.  
    1 >>>> ('Mac电脑',6000)
  28.  
    选择购买商品编号[退出:q]:7
  29.  
    编码不存在
  30.  
    1 >>>> ('Mac电脑',6000)
  31.  
    选择购买商品编号[退出:q]:1*4
  32.  
    invalid input
  33.  
    1 >>>> ('Mac电脑',6000)
  34.  
    选择购买商品编号[退出:q]:3
  35.  
    余额不足,还剩1145600
  36.  
    ('法拉利',6000)
  37.  
    选择购买商品编号[退出:q]:q
  38.  
    ------------您已经购买如下商品----------------
  39.  
    ('Mac电脑',9500)
  40.  
    ('Mac电脑',9500)
  41.  
    ('windows电脑',800)
  42.  
    ('法拉利',8800000)
  43.  
    ('Mac电脑',9500)
  44.  
    ('python入门教程',100)
  45.  
    ('华为',6000)
  46.  
    ('Mac电脑',9500)
  47.  
    您还剩1145600元钱
  48.  
     
  49.  
    Process finished with exit code 0
     
      

    本文首发于python黑洞网,博客园同步更新

相关文章

1. 上下文管理器 一个类只要实现了&#160;__enter__()&am...
实验报告一一、作业:建议用时15分钟二、环境:Pycharm -Pyt...
项目意义 如果你想在支付宝蚂蚁森林收集很多能量种树,为环境...
发邮件是一种很常见的操作,本篇主要介绍一下如何用python实...
我们知道为了提高代码的运行速度,我们需要对书写的python代...
前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~...