Python_week1-2018.7.8(购物车,BMI增删改查系统)
Posted 康琛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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("你输入有误!!")
以上是关于Python_week1-2018.7.8(购物车,BMI增删改查系统)的主要内容,如果未能解决你的问题,请参考以下文章