2 -15 -1 购物车基本需求1

有bug,没找出来
""" 要求: 1,输入用户名,密码,工资,打印商品列表 2,允许用户根据商品编号购买商品 3,用户选择商品后,检测余额是否足够,够就扣款,不够就提醒 3,可随时退出,退出时,打印已购买的商品和余额 4,在用户使用过程中,关键输出,如余额,商品已加入购物车等消息,需高亮显示 拓展需求 1,用户下一次登录后,输入用户名面膜,直接回到上次登录状态,即上次 消费的余额等,可再次继续购买, 2,允许查询之前的消费记录 """ goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998} ] shopping_cart = [] _username = 'abc' _password = '123' #\033[1;34m+name+\033[0m ''' \033[ 1:表示加深,0表示正常显示,2表示减弱,也是背景色 40: 黑 41: 红 42: 绿 43: 黄 44: 蓝 45: 紫 46: 绿 47: 白 34m:表示蓝色,是字体颜色 30: 黑 31: 红 32: 绿 33: 黄 34: 蓝 35: 紫 36: 绿 37: 白 第三个参数:代表显示效果 ,当不需要背景色,也可以用于参数1位置 0:不使用效果 1:高亮(加深)显示 2:低亮(减弱)显示 4:下划线 5:闪烁 7:反显(替换背景色和字体颜色) 8:消隐 \033[0m:表示结束 print('\033[41;32;5m 闪光\033[0m') #闪光字符,在windows里面没有测试出效果,在pycharm里面没有效果,在linux里面测试出效果 print('\007响一声!\033[0m') #发出声音 在windows里面测试出效果,在pycharm里面没有效果,在linux里面测试出效果 print('\033[43;34;4m 下划线\033[0m') print('\033[45;36;7m 反显\033[0m') print('\033[47;31;8m 消隐\033[0m') #看不到了 ''' while True:#用户名密码循环 username = input("输入用户名:").strip() password = input("输入密码:").strip() if username == _username and password == _password: print("\033[1;34m-----登录成功,欢迎%s\033[0m"%username) while True:#工资循环 salary = input("输入工资:").strip() if not salary: continue if salary.isdigit(): salary = int(salary) while True:#商品列表循环 print("-----商品列表-----") for index, i in enumerate(goods): print("%s %s %s "%(index, i["name"], i["price"])) choice = input("输入商品编号|退出q:").strip() if not choice:#如果条件choice结果不为真, continue if choice.isdigit(): choice = int(choice) if choice < len(goods): if salary >= goods[choice]["price"]: shopping_cart.append([goods[choice]['name'], goods[choice]['price']]) print("\033[1;32m>你购买了%s\033[0m"%goods[choice]["name"]) salary -= goods[choice]["price"] print("\033[1;31m>余额剩余%s\033[0m"%salary) else: print("\033[1;31;47m余额不足,请重新选择\033[0m") else: print("\033[1;34m你输入的商品不存在\033[0m") elif choice == "q": if len(shopping_cart) > 0: print("\033[1;34m-----你的购物车-----") for index, i in enumerate(shopping_cart): print(index, i[0], i[-1]) print("------------------") print("你的余额:%s\033[0m"%salary) exit() else: print("\033[1;34;47m你的购物车为空,你的余额:%s\033[0m"%salary) exit() else: print("\033[1;34;47m你输入有误,请重新输入\033[0m") else: print("\033[1;31m你输入有误,请重新输入\033[0m") else: print("\033[1;31;47m用户名或者密码错误\033[0m")

 

上一篇:Phton3使用print输出带颜色的彩色字体


下一篇:shell中设置文字输出的颜色及字体格式