python 购物车增删改_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("你输入有误!!")

原文:https://www.cnblogs.com/kcwxx/p/9280872.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值