Python学习day2

程序练习 

#Author:Fred
'''
程序:购物车程序
需求:
1启动程序后,让用户输入工资,然后打印商品列表
2允许用户根据商品编号购买商品
3用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
4可随时退出,退出时,打印已购买商品和余额
'''
product_list = [
    ('iphone',5499),
    ('Macboook',9800),
    ('bike',800),
    ('iwatch',10600),
    ('coffee',38),
    ('python',120)
]
shopping_list = []
salary = input("Input your salary:")
if salary.isdigit():
    salary = int(salary)
    while True:
        for index,item in enumerate(product_list):#enumerate方法:把下标取出来
            #print(product_list.index(item),item)
            print(index,item)
        user_choice = input("选择要买什么,请输入商品编号>>>:")
        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))#打印出来的余额是红色字体31红色32绿色
                else:
                    print("\033[41;1m你的余额只剩[%s]啦,还买个p\033[0m"%salary)#有背景的红色
            else:
                print("商品[%s]不存在",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 input")
else:
    print("invalid input")

 

posted @ 2019-11-26 15:33  ZzXx1210  阅读(146)  评论(0)    收藏  举报