描述:1.启动程序后,让用户输入金额,然后打印出所有的商品及其价格 如果输入的不是数字则退出程序 2.允许用户输入商品的编号来购买商品 如果输入的是数字则判断数字是否合理,如果合理则扣钱,加入用户的购物车 如果输入的是q则退出程序 如果输入的是其他字符或符号则提示输入有误,询问是否重新输入 如果重新输入的是y则继续让用户输入产品序号 否则退出程序,并打印出已经购买的商品3.退出程序时打印所购买的商品流程图
#!usr/bin/evn python#-*-coding utf-8 -*-product_list = [ ("宝马",1000), ("大众",700), ("丰田",900), ("宾利",1100), ("本田",950),]#创建一个produce_list字典存放产品及价格shooping_cart =dict()#创建一个字典用于存储用户已经购买的产品,和购买的件数while True: remain_sum = input("请输入您的余额:") if remain_sum.isdigit(): print("您的购物车空空如也。。。。。") remain_sum=int(remain_sum) loop = 0 while True: if loop ==0:#只有用户刚进入的时候显示余额,即第一次执行while循环时打印余额 print("|-----------|\n|余额",remain_sum,"\n|___________|") loop =1 print("====商品列表====") for index,product in enumerate(product_list): print(index,product[0],product[1]) while True: user_choice = input("请输入您要购买的商品序号》》》") if user_choice.isdigit():#判断输入的是否是数字 user_choice = int(user_choice) if -1< user_choice= pice:#只有商品接个不大于余额时才会扣款并加入购物车 remain_sum -=pice if product in shooping_cart:#将购买的商品加入用户购物车,并统计购买的数量 shooping_cart[product] +=1 else: shooping_cart[product]=1 break else: print("---->您的余额为%s,请选择其他商品<-----"%remain_sum) recharge = input("请问您是否充值:") if recharge == "y": add = input("请输入您充值的金额:") while not add.isdigit(): add = input("您的输入有误,请重新输入您充值的金额:") remain_sum += int(add) print("您充值后的余额为:", remain_sum) break else: break else: print("---->您选择的商品不存在<-----") elif user_choice == "q":#如果用户输入的是q而不是商品编号则推出程序,并打印出用户所购买的商品 if len(shooping_cart)==0: print("轻轻的你走了,正如你轻轻的来,没有带有一件商品") else: print("您购买的商品如下:") key = list(shooping_cart.keys()) for item in key: print(item,":",shooping_cart[item]) exit() else:#如果用户输入的既不是商品编号也不是q则提示输入有误并决定是否继续购物 if input("《《《您的输入有误》》》\n<---->是否继续购物 ^_^ :")=="y": continue else:#如果用户不输入y,则打印用户购买的商品及数量,并推出程序 if len(shooping_cart)==0: print("轻轻的你走了,正如你轻轻的来,没有带有一件商品") else: print("您购买的商品如下:") key = list(shooping_cart.keys()) for item in key: print(item,":",shooping_cart[item]) exit() else: print("您的货币无法流通,请换取人民币再来购物!!!") if input("请问是否继续购物》》》")=="y": continue else: print("您已经离开商店,欢迎下次光临.......") exit()