需求:

  1. 启动程序后,让用户输入工资,然后打印商品列表
  2. 允许用户根据商品编号购买商品
  3. 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 
  4. 可随时退出,退出时,打印已购买商品和余额
# -*- coding:utf-8 -*-

product_list = [
    ('Iphone',5800),
    ('Mac Pro', 12000),
    ('Bike',800),
    ('Watch',15000),
    ('Coffer',46),
    ('Book',70)
]
shopping_list = []
salary = raw_input("Please input your salary:")
if salary.isdigit():
    salary = int(salary)
    while True:
        for index,item in enumerate(product_list):
            print(index,item)
        user_choice = raw_input("Please choice wath do you want to 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]
                if p_item[1] <= salary: #买得起
                    shopping_list.append(p_item)
                    salary -= p_item[1]
                    print("Added [%s] into shopping cart,your current balance is \033[31;1m%s\033[0m" % (p_item,salary))
                else:
                    print("\033[41;1m you have no more money!! \033[0m")
                    exit()
            else:
                print("product code [%s] is no exist!!" % user_choice)
        elif user_choice == 'q':
            print("##########shopping list###########")
            for p in shopping_list:
                print(p)
            print("Your current balance:",salary)
            exit()
        else:
            print("invalid option")

 购物车进阶:https://www.cnblogs.com/hulk-1029/p/11132424.html

posted on 2019-05-31 10:37  雨之夜&秋  阅读(213)  评论(0编辑  收藏  举报