shopping cart

#Author:Kevin_hou
                        #定义产品列表
product_list =[
    ('HUAWEI',5999),
    ('Watch',500),
    ('Nike',800),
    ('Toyota',200000),
    ('basketball',500),
    ('bike',1000),
]

shopping_list =[]              #定义购物车列表
salary = input("your salary is...>>>")  #首要先输入工资
if salary.isdigit():            #然后工资要是数值
    salary =int(salary)          #将工资取整,因为产品价格均为整数值
    while True:               #while True循环语句
        for index,item in enumerate(product_list):    #for循环语句,用于依次输出产品列表,index指数组下标值,item指具体产品
            print(index,item)                #输出 0 ('HUAWEI', 5999)
        user_choice = input("what do you want buy ?")  #输入用户选择的产品,即数组值
        if user_choice.isdigit():              #判断如果用户输入的是数字变量
            user_choice =int(user_choice)          #取整
            if user_choice< len(product_list) and user_choice >=0:  #如果是数字量,再次判断数字值是否在产品数量区间内
                p_item = product_list[user_choice]            #将用户选择的产品赋给p_item
                if p_item[1] <= salary:                   #再判断产品价格不大于工资值
                    shopping_list.append(p_item)              #如果不大于,加入购车列表
                    salary -= p_item[1]                    #余额=工资-支付的费用
                    print("Add %s into shopping cart, your current balance is \033[31;1m%s\033[0m" %(p_item,salary))  #输出余额
                else:
                    print("\033[41;1m your current balance is [%s], you have no enough many to pay...>>>\033[0m"% salary)  #输出余额不足
            else:
                print("\033[41;1m product code [%s] is not exit!\033[0m"% user_choice)  #输出产品不存在
        elif user_choice =='q':  #如果用户选择输入是字母q
            print("-----------shopping list-----------")  #输出------------shopping list------------
            for p in shopping_list:  #for循环,输出添加进购物车的产品
                print(p)
                print("Your current balance:", salary)  #输出余额
                exit()                      #退出
        else:
            print("invalid option")    #如果用户选择既不是在产品列表内,又不是q,则输出“invalid option”提示

  

posted @ 2020-07-23 22:46  JRS077  阅读(139)  评论(0编辑  收藏  举报