程序:购物车程序
需求:
- 启动程序后,让用户输入工资,然后打印商品列表
- 允许用户根据商品编号购买商品
- 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
- 可随时退出,退出时,打印已购买商品和余额
1 produce_list=[("Iphone",5000),("Mac Pro",9800),("Bike",800),("Watch",11000),("coffee",40),("alex python",30)] 2 3 shopping_list = [] 4 5 salary = input("请输入你的工资数:") 6 7 if salary.isdigit(): #判断输入是否为数字 8 9 salary = int(salary) #将数字转换成整型 10 11 while True: 12 13 # for item in produce_list: 14 15 # print(produce_list.index(item),item) 16 17 for index,item in enumerate(produce_list):#取出列表中所有值对应的编号 18 19 print(index,item) #显示编号和值 20 21 user_choice = input("选择要买什么?>>>") 22 23 if user_choice.isdigit(): #确定输入的是数字 24 25 user_choice =int(user_choice) 26 27 if user_choice < len(produce_list) and user_choice >=0: #判断输入的编号0-5 28 29 p_item = produce_list[user_choice] #将商品名称和单价保存到p_item变量中 30 31 if p_item[1] <= salary: #将商品的价格与工资做对比 32 33 shopping_list.append(p_item) #如果买的起,就将商品加入到购物车 34 35 salary -=p_item[1] #工资减去商品价,得到余额 36 37 print(" \033[31;1m将%s加入购物车 ,您的当前余额为%s\033[0m" %(p_item,salary))#高亮显示字符 38 39 else: 40 41 print("\033[41;1m您的余额只剩%s,无法继续购买!!!\033[0m" %salary )#高亮显示背景 42 43 else: 44 45 print("\033[41;1m商品编号%s不存在,请重新选择!!!\033[0m" %user_choice) 46 47 48 49 50 51 elif user_choice == 'q': #中途退出 52 53 print("------------shopping_list------") 54 55 for i in shopping_list: 56 57 print(i) 58 59 print("您的当前余额为:",salary) 60 61 exit() 62 63 else: 64 65 print("\033[41;1m无效的输入!!!请输入商品编号\033[0m") 66 67 else: 68 69 print("\033[41;1m无效的输入!!!请输入工资数字\033[0m")
高亮显示:红色31、绿色32、黄色33、蓝色34