• Python_week1-2018.7.8(购物车,BMI增删改查系统)


    """
    功能要求:
    要求用户输入自己拥有总资产,例如:2000
    显示商品列表,让用户根据序号选择商品,加入购物车
    购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
    goods = [
    {"name": "电脑", "price": 1999},
    {"name": "鼠标", "price": 10},
    {"name": "游艇", "price": 20},
    {"name": "美女", "price": 998},
    ]

    """

    goods = [
    {"name": "电脑", "price": 1999},
    {"name": "鼠标", "price": 10},
    {"name": "游艇", "price": 20},
    {"name": "美女", "price": 998},
    ]

    money = int(input("请输入你的总资产是多少:"))
    count = 1
    lis = [1,2,3,4]
    for i in goods:
    print("{} {} {}".format(count, i.get("name"), i.get("price")))
    count += 1

    lst = []
    while True:
    a = input("请输入你要购买的商品编码:").upper()
    if a == "Q":
    print("输入结束!!")
    break
    elif int(a) in lis:
    a = int(a)
    if money - goods[a - 1].get("price") >= 0:
    lst.append(a)
    print("已经成功添加--%s--号商品,商品价格是--%s--,你还剩下--%s--" % (a, goods[a - 1].get("price"), money - goods[a - 1].get("price")))
    money = money - goods[a - 1].get("price")
    else:
    print("余额不足,无法购买!")
    break

    else:
    print("输入有误!!!请重新输入:")
    print(lst)
    print("你还剩余--{}元--你目前已经成功购买以下产品:".format(money))
    for i in lst:
    print(goods[i - 1].get("name"))
    print("购物结束!")




    # 1.创建并输出菜单, 菜单是不可变的. 所以使用元组
    # menus = ("1, 录入", "2, 查询", "3, 删除", "4, 修改", "5, 退出")

    # 存储用户的信息 id: {'name':'名字', 'weight':体重, 'height':身高}
    # 例如:目前有两个用户信息:1. 汪峰, 2. 章子怡
    # 存储结构:
    # {
    # 1:{'name':'汪峰', 'weight':80, 'height':1.8, 'BMI':24.7},
    # 2:{'name':'章子怡', 'weight':50, 'height':1.65, 'BMI':18.4}
    # }
    # bodies = {}
    #
    # body_id = 1 # 编号从1开始

    # 体质指数(BMI)= 体重(kg)÷ (身高(m) x 身高(m))
    # 体重的单位: KG
    # 身高的单位: m
    # 需求:首先。打印菜单,然后用户输入选择的菜单项
    # 输入1:进入录入环节。用户需要录入:名字,身高,体重.
    # 由程序计算出BMI指数. 保存到bodies字典中. 第一个用户的id是1, 第二个是2, 以此类推
    # 录入完毕后. 提示用户是否继续录入. 如果选择是, 则继续进行录入, 直到用户输入否. 则返回到主菜单
    # 输入2: 进入查询环节, 提示用户输入要查询的人的id. 如果不存在,给与提示, 如果存在. 则显示出该用户的全部信息(名字,身高,体重,BMI)
    # 然后提示用户是否继续查询. 如果选择是, 继续进行查询, 直到用户输入否, 返回主菜单
    # 输入3: 进入删除环节, 提示用户输入要删除的人的id, 如果id不存在, 给与提示, 如果存在, 则执行删除操作. 并提示删除成功.
    # 然后提示用户是否继续删除, 如果是, 继续让用户选择要删除的id, 直到用户输入否, 返回主菜单
    # 输入4: 进入修改环节, 首先让用户输入要修改的人的id, 根据id查找用户信息, 如果不存在, 给与提示, 如果存在, 将用户原信息进行打印,
    # 然后提示用户输入新的名字, 身高, 体重. 由程序重新计算BMI指数. 并将新的信息保存在bodies中. 同时给用户展示新的用户信息
    # 然后提示用户是否继续修改, 如果是, 则继续要求用户输入id信息. 直到用户输入否, 返回主菜单.
    # 输入5: 程序退出.
    # 输入其他任何内容. 都予以提示不合法. 让用户重新进行输入
    body_id = 1
    dic = {}
    while True:
    menus = ("1, 录入", "2, 查询", "3, 删除", "4, 修改", "5, 退出")
    print("欢迎您进入系统!!!")
    for i in menus:
    print(i)
    num = input("请根据菜单序号输入你要进行的操作:")
    if num == "1": ##添加用户信息
    #录入系统
    print("您现在在--录入--界面:")
    while True:
    bodies = {}
    name = input("请输入你的姓名:")
    bodies["name"] = name
    hight = int(input("请输入你的身高(cm):"))
    bodies["hight"] = hight
    weight = int(input("请输入你的体重(Kg):"))
    bodies["weight"] = weight
    BMI = weight / hight * 2
    bodies["BMI"] = BMI
    dic[body_id] = bodies
    body_id += 1
    chose1 = input("选择是否还要录入:")
    print(bodies)
    print(dic)
    if chose1 == "是":
    continue
    else:
    break
    # print(bodies)
    # print(dic)

    elif num == "2": ##查看用户信息模块
    while True:
    print(bodies)
    print(dic)
    print("您现在在--查询--界面:")
    chose2 = int(input("请输入你要查询的人ID号码:"))
    print(dic.get(chose2, "不存在这个ID"))
    chose1 = input("选择是否还要查询:")
    if chose1 == "是":
    continue
    else:
    break

    elif num == "3": ##删除用户信息模块
    while True:
    print("您现在在--删除--界面:")
    print(bodies)
    print(dic)
    chose3 = int(input("请输入你要删除的人ID号码:"))
    print(dic.keys())
    if chose3 in dic.keys():
    ret = dic.pop(chose3)
    print("你删除的内容是:{}".format(ret), " 删除成功!!")
    else:
    print("没有这个ID:")
    chose1 = input("选择是否还要删除:")
    if chose1 == "是":
    continue
    else:
    break


    elif num == "4": #修改用户信息模块
    print("您现在在--修改--界面:")
    while True:
    chose4 = int(input("请输入你要修改的人ID号码:"))
    print(dic.keys())
    if chose4 in dic.keys():
    print(dic[chose4])
    bodies = {}
    name = input("请输入新的的姓名:")
    bodies["name"] = name
    hight = int(input("请输入新的的身高(cm):"))
    bodies["hight"] = hight
    weight = int(input("请输入新的的体重(Kg):"))
    bodies["weight"] = weight
    BMI = weight / hight * 2
    bodies["BMI"] = BMI
    dic[chose4] = bodies
    body_id += 1
    else:
    print("没有这个ID:")
    continue
    chose1 = input("选择是否还要继续修改:")
    print(bodies)
    print(dic)
    if chose1 == "是":
    print("请进行下一次修改!!")
    else:
    break
    elif num == "5":
    print("您退出了程序,欢迎下次使用!")
    break
    else:
    print("你输入有误!!")
  • 相关阅读:
    Java求区间连续最大和的三种解法(含输出起始位置)
    Java批量操作和遍历文件程序收集
    FastJson序列化部分字段的方法
    Spring源码之一步步拓展实现spring-mybatis
    Spring源码之BeanFactoryPostProcessor的执行顺序
    Classpath entry points to a non-existent location:D:libjavajdk8jrelibextaccess-bridge-32.jar
    编译Spring源码省心小贴士
    (转)HttpServletResquest对象
    (转)ServletConfig与ServletContext
    Oracle复习(复习精简版v1.0)
  • 原文地址:https://www.cnblogs.com/kcwxx/p/9280872.html
Copyright © 2020-2023  润新知