列表,循环,判断,格式化输出等综合操作第一个综合程序

 
"""
程序:购物车程序
需求:
1.启动程序后,让用户输入工资,然后打印商品列表
2.允许用户根据商品编号购买商品
3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
4.可随时退出,退出时,打印已购买商品和余额
"""
#用户登录后需要加载的变量
product_list=[
                ["xiaomi6",2499],
                ["huaweip8",3000],
                ["iphon6",5000],
                ["basketball",300]
             ]   #创建产品列表
legal_input=["q"]   #用户购买合法输入列表
user_card=[]   #用户已购买商品的列表
while True:
        user_salary=input("请输入工资")
        if user_salary.isdigit():
            x=int(user_salary)
            break
        else:
            print("输入错误请重新输入")
user_salary=int(user_salary)
for i,j in enumerate(product_list):   #定义一个打印商品列表的函数
    legal_input.append(str(i))
##对用户的输入可能做判断,满足要求的输入是0到3这几个数字字符串q字符,

def print_product_list():
    for product_id,product in enumerate(product_list):
        print(product_id,product)
print_product_list()
while True:
    user_choice=input("请输入你要购买的商品编号(q退出程序):")
    if user_choice in legal_input:
        if user_choice=="q":
            print("你已购物品如下:%s" % user_card)
            break
        else:  #用户选择购买商品
                print_product_list()
                if  user_salary>0:
                    for i,j in enumerate(product_list):
                        if i==int(user_choice):
                             if user_salary-j[1]>0:
                                user_card.append(j)
                                user_salary=user_salary-j[1]
                                print("{}商品已被购买,您的余额为{}".format(j,user_salary))
                             else:
                                 print("您的余额为%s不足购买本产品" % user_salary)
                else:
                    print("您的余额不足购买{}产品".format(user_choice))
    else:
        print("输入错误,请重新输入")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值