zoukankan      html  css  js  c++  java
  • Python习题__购物车

    功能要求:

    • 要求用户输入总资产,例如:2000
    • 显示商品列表,让用户根据序号选择商品,加入购物车
    • 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
    • 附加:可充值、某商品移除购物
      goods = [
          {"name": "电脑", "price": 1999},
          {"name": "鼠标", "price": 10},
          {"name": "游艇", "price": 20},
          {"name": "美女", "price": 998},
      ]
       1 goods = [
       2 {"name": "电脑", "price": 1999},
       3 {"name": "鼠标", "price": 10},
       4 {"name": "游艇", "price": 20},
       5 {"name": "美女", "price": 998},
       6 ]
       7 shopping_cart = []
       8 your_asset = int(input('请输入你的总资产: '))
       9 for my_goods in enumerate(goods):
      10     index = my_goods[0]#选择商品的序号
      11     shopping_list = my_goods[1]#表示选择商品的清单
      12     shopping_name = shopping_list['name']#表示选择的商品的名字
      13     shopping_price = shopping_list['price']
      14     print(shopping_list,(index,shopping_name,shopping_price))
      15 while True:
      16     your_choose = input('请输入你想要购买商品的序号: ').strip()
      17     if  your_choose.isdigit():
      18         your_choose = int(your_choose)
      19     else:
      20         print('输入错误,请重新输入')
      21         continue
      22     if your_choose < len(goods) and your_choose >= 0:
      23         my_index = goods[your_choose]
      24         my_shopping_name = my_index['name']
      25         my_shopping_price = my_index['price']
      26     else:
      27         print('输入错误,请重新输入')
      28         continue
      29     if int(my_shopping_price) < int(your_asset):
      30         shopping_cart.append(my_shopping_name)
      31         print(shopping_cart)
      32         your_asset = your_asset - my_shopping_price
      33         print('你的剩余的金额为%s'%(your_asset))
      34         go_buy = input('是否想继续购买??>>请回答yes或者no: ')
      35         if go_buy == 'yes':
      36             print('请继续买你心仪的商品吧!')
      37         else:
      38             for i in shopping_cart:
      39                 print('你购买的商品是:%s'%(i))
      40             break
      41     else:
      42         print('你的余额不足!!')
      43         shopping_cart.append(my_shopping_name)
      44         ans = input('是否要继续充值>>请回答yes或者no: ')
      45         if ans == 'yes'.strip():
      46             recharge = input('请输入你所要充值的金额').strip()
      47             recharge = int(recharge)
      48             your_asset = your_asset + recharge
      49             print('您充值后的金额为%s'%(your_asset))
      50         elif ans == 'no'.strip():
      51             print('余额不足')
      52             remove_shopping_cart = input('是否要将商品移除购物车>>请回答yes或者no: ')
      53             if remove_shopping_cart == 'yes':
      54                 remove_shopping = input('请输入要移除的商品序号: ').strip()
      55                 shopping_cart.remove(goods[int(remove_shopping)]['name'])
      56                 print('您的购物列表如下: ')
      57                 for j in shopping_cart:
      58                     print(j)
      59                 break
      60             elif ans == 'no':
      61                 print('购买失败')
      62                 break
      View Code
  • 相关阅读:
    Java实例_队列Queue用法
    JAVA中不同类型的取值范围
    面试被问到的题
    关于Maven启动项目各种.xml文件和.properties文件找不到问题的解决
    jupyter使用
    java中“==”和equal区别
    redis持久化的几种方式
    事务是什么,以及事务四个特性
    Java中的String类能否被继承?为什么?以及final和static的区别
    pytest.mark.parametrize 参数化
  • 原文地址:https://www.cnblogs.com/wangmengzhu/p/7155632.html
Copyright © 2011-2022 走看看