3.28 每日一练

1 or 2 和1 and 2输出分别是什么? 为什么
1 or 2   输出1  ——如果1为真,输出的就是1;如果2为真,输出的就是2
1 and 2输出2  ——如果1位真,输出的就是2;如果1为假,输出的就是1

"""
数据结构:
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
......
]
基本需求:75%
1. 启动程序后,输入用户名密码后,让用户输入工资,然后打印商品列表
2. 允许用户根据商品编号购买商品
3. 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
4. 可随时退出,退出时,打印已购买商品和余额
5. 在用户使用过程中, 关键输出,如余额,商品已加入购物车等消息,需高亮显示

升级需求:10%
1. 用户下一次登录后,输入用户名密码,直接回到上次的状态,即上次消费的余额什么的还是那些,再次登录可继续购买
2. 允许查询之前的消费记录
"""
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
shopping = []
Uname = ['ljy']
Upassword = ['123456']
name_ = input("请输入用户名:")
password_ = input("请输入密码:")
if Uname[0] == name_ and Upassword[0] == password_:
    print("欢迎进入")
    salary = input("请输入工资:")
    if salary.isdigit():   #判断salary为数字
        salary = int(salary)
        while True:
            for index,item in enumerate(goods):
                print(index,item)
            choice = input("请选择商品编号:")
            if choice.isdigit():
                choice = int(choice)
                if choice < len(goods) and choice >= 0:
                    a = goods[choice]  #a为用户购物列表
                    if a["price"] <= salary:
                        shopping.append(a)
                        salary = salary - a["price"]
                        print("剩余",salary)
                    else:
                        print("余额不足")
                else:
                    print("商品不存在")
            elif choice == 'b':
                print("购物列表")
                for b in shopping:
                    print(b)
                print("余额还剩",salary)
                exit()
            else:
                print("无法识别")

else:
    print("进入失败!")

简单的小题可以完成,但是遇到稍微大型一些的题,就会很“难过”;做的这道题是Python里最基础的,但是前后却弄了很久很久。
其他人的五分钟在我这需要半小时吧,上学期间自己就笨笨的,感觉现在还是这样。但是不能放弃,一定会变好的!明天继续努力,以后在每天的练习下跟一句所学感受,不同阶段来看看不同阶段的自己是什么样子,有没有进步,加油


posted @ 2020-03-28 23:01  扎小辫的胖虎  阅读(119)  评论(0编辑  收藏  举报