程序:购物车程序

需求:

  • 启动程序后,让用户输入工资
  • 允许客户根据商品编号购买商品
  • 用户选择商品后,判断余额是否够,够就直接付款,不够就打印警示信息
  • 随时退出,退出时候,答应商品清单和余额

代码:

# Author ming
# version 3.11
# 初始化产品列表
product_list = [("苹果手机","10000")
    ,("小米电视","998"),
    ("可爱抱枕","58"),
    ("华为电脑","7888"),
    ("大白机器人玩具","1288")
]
shopping_list = []
# 初始化变量salry
salry = input("请输入您的工资:\n")
# 条件判断salry变量是否为正整数
if salry.isdigit():
    salry = int(salry)
    while True:
# 循环打印商品列表信息
        for index,items in enumerate(product_list):
            print(index,items)
        user_choice = input("####选择标号,购买商品?,按q退出")
# 判断user_choice是否为正整数
        if user_choice.isdigit():
            user_choice = int(user_choice)
# 判断user_choice变量是否超过列表最大长度,且不为0
            if user_choice < len(product_list) and user_choice >= 0:
                p_item = product_list[user_choice]
# 将列表中数字的str类型转换成int型
# 3.11版本,字符串无法自动转成INT类型,需要手动转换
                p_item_I = int(product_list[user_choice][1])
# 判断商品价格是否超过工资价格,未超过则购买,并输出余额
                if p_item_I <= salry:
# 写进商品购物列表里面
                    shopping_list.append(p_item)
# 计算工资余额
                    salry -= p_item_I
                    print("增加%s进入您的购物车,您的余额还有%s" %(p_item[0],salry) )
# 余额不够购买,打印提示信息,并输出余额
                else:
                    print("你的余额只有%s,买个毛线!!!" %salry)
# 退出程序
        elif user_choice == "q":
            print("你一共购买了以下产品:\n%s,余额还有%s元" %(shopping_list,salry) )
            exit()
        else:
            print("无该选项,返回购买菜单")

验证: