python学习笔记day06 购物车实现

作业要求

1、启动程序后,输入用户名密码后,如果是第一次登录,让用户输入工资,然后打印商品列表

2、允许用户根据商品编号购买商品

3、用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒

4、可随时退出,退出时,打印已购买商品和余额

5、在用户使用过程中, 关键输出,如余额,商品已加入购物车等消息,需高亮显示

6、用户下一次登录后,输入用户名密码,直接回到上次的状态,即上次消费的余额什么的还是那些,再次登录可继续购买

7、允许查询之前的消费记录

#实现购物车功能(假定不同用户,用户名不同)
user_info={}  #存放用户信息包括用户名,密码,工资等信息
goods_info={'电脑':4000,'手机':3000,'鼠标':50,'':30,'耳机':60}  #商品
stop=1
while stop:
    username = input('用户名>>>')
    password = input("密码>>>")
    print('商品信息如下:')
    for name, price in goods_info.items():
        print(name, price)
    goods_buying_info = []
    flag=1
    while flag:
        if username not in user_info:  #输入新的用户名和密码
            salary=float(input("工资>>>"))  #新用户需要输入工资
            user_info[username] = {'password': password,'salary':salary}

        goods_name=input('要购买的商品>>>')  #输入想要购买的商品名称
        if goods_name.upper()=='Q':
            if goods_buying_info is []:  #未购买商品
                print("您尚未购买商品")
            else:
                print('您已购商品为:',goods_buying_info)
            print("您还有余额:",user_info[username]['salary'])
            flag=0
        if goods_name in goods_info:
            if user_info[username]['salary'] >=goods_info[goods_name]:
                goods_buying_info.append(goods_name)
                salary=salary-goods_info[goods_name]  #更新该用户余额
                user_info[username]['salary']=salary
            else:
                print("money is not enough~")
                flag=0  #退出当前用户

        else:
            print("please input right goods_name")
            continue
    info=input('continue(Y or N)?')
    if info.upper()=='N':
        stop=0

 

posted @ 2018-08-22 21:20  写的BUG代码少  阅读(243)  评论(0编辑  收藏  举报