• 用python编写购物程序(2)


    要求:

    1. 启动程序后,让用户输入工资,然后打印商品列表
    2. 允许用户根据商品编号购买商品
    3. 用户选择商品后,检测余额是否充足,够就直接扣款,不够就提醒
    4. 可随时推出,退出时打印以购买商品,购买商品数量及余额

    代码:

     1 #!/usr/bin/env python
     2 # -*- coding:utf-8 -*-
     3 # Author:James Tao
     4 
     5 list_of_goods=[
     6     ['iphone',5800],
     7     ['Mac Pro',12000],
     8     ['Bike',800],
     9     ['Watch',2000],
    10     ['Coffee',31],
    11     ['Book',120]
    12 ]
    13 list_of_bought=[]
    14 dict_of_bought={}
    15 salary=input('请输入您的工资:')
    16 if salary.isdigit():#判断是否是整数
    17     salary=int(salary)
    18     while True:
    19 
    20         #输出商品及其编号
    21         for index,item in enumerate(list_of_goods):#enumerate取出下标
    22             print(index,item)
    23             #print(list_of_goods.index(item),item)
    24         choice_of_user=input('选择购买商品编号:')
    25 
    26         #判断输入是否合法
    27         if choice_of_user.isdigit():
    28             choice_of_user=int(choice_of_user)
    29 
    30             #判断编号是否有对应商品
    31             if 0<=choice_of_user<len(list_of_goods):
    32 
    33                 #判断余额是否足够买此商品
    34                 if list_of_goods[choice_of_user][1]<=salary:
    35 
    36                     #加入购物清单
    37                     list_of_bought.append(list_of_goods[choice_of_user][0])
    38 
    39                     #计算余额`
    40                     salary-=list_of_goods[choice_of_user][1]
    41 
    42                     print('''添加{boughtgood}到您的购物车,此刻您的余额为{balance}.
    43                     '''.format(boughtgood=list_of_goods[choice_of_user][0],balance=salary))
    44                 else:
    45                     print('您的余额不足,此实余额为%s,不够购买此商品',salary)
    46             else:
    47                 print('商品不存在')
    48 
    49         elif choice_of_user=='q':
    50 
    51             #统计购买的商品及数量
    52             category_of_bought=set(list_of_bought)
    53             for item in category_of_bought:
    54                 dict_of_bought[item]=list_of_bought.count(item)
    55             print('您购买的商品及数量分别为',dict_of_bought)
    56 
    57             print('您的余额为:',salary)
    58             exit()
    59         else:
    60             print('输入不合法')
    61 else:
    62     print('输入不合法')
  • 相关阅读:
    【高软作业4】:Tomcat 观察者模式解析 之 Lifecycle
    Eclipse 导入 Tomcat 源码
    【高软作业3】:原型化系统 DevTools
    Java Obejct
    Java PriorityQueue
    【高软作业2】:Java IDE调研分析
    GitHub fork 合作开发 快速实现版
    用C#实现天气预报(调用WebService)
    hover和点击事件之间的冲突
    BurpSuite2021系列(三)新建扫描
  • 原文地址:https://www.cnblogs.com/BIT-taozhen/p/9735865.html
Copyright © 2020-2023  润新知