PYTHON基础入门----商品库存管理系统
如果商品信息只保存在程序运行过程中那么程序关闭后所有数据都会丢失。因此我们需要将商品数据保存到文件中下次运行程序时还能继续读取和使用。本题要求你编写一个简单的商品库存管理系统实现商品的添加、查看、修改库存、删除、保存和读取功能。一菜单呈现二所有商品信息保存在一个列表中每个商品使用一个字典表示。示例数据结构如下三当用户选择1时程序提示用户输入 输入完成后将商品信息保存到products列表中。添加成功后提示代码实现当用户选择2时程序显示当前所有商品信息。显示时需要计算每种商品的库存总金额显示格式代码实现当用户选择3时程序根据商品名称在products列表中查找。如果找到该商品则继续提示代码实现选4时删除商品代码实现当用户选择5时程序需要将当前products列表保存到文件中代码实现当用户选择6时程序需要从products.pkl文件中读取之前保存的商品数据。代码实现总代码实现products [{name: 键盘,price: 99,stock: 20},{name: 鼠标,price: 59,stock: 35}]import pickleimport osdef show_menu():print(str1)def add_product(products):unameinput(请输入商品的名称)priceinput(请输入商品价格)stockint(input(请输入商品库存))list{name:uname,price:price,stock:stock}products.append(list)print(商品添加成功)def show_products(products):for i in products:totali[price]*i[stock]print(-*40)print(f商品名称{i[name]}\n商品价格{i[price]}\n商品库存{i[stock]}\n库存总金额{total})def update_stock(products):unameinput(请输入要修改库存的商品)aFalsefor i in products:if i[name]uname:aTruenew_stockint(input(请输入新的库存数量:))i[stock]new_stockprint(库存修改成功)breakif not a:print(商品不存在)def delete_product(products):unameinput(请输入要删除的商品)for index,value in enumerate(products):if unamevalue[name]:del products[index]print(商品删除成功)return Trueprint(商品不存在)def save_data(products):with open(products.pk1,wb) as f :pickle.dump(products,f)print(数据保存成功)def load_data():if not os.path.exists(products.pk1):print(文件不存在请先保存数据)return []with open(products.pk1,rb) as f:date pickle.load(f)print(数据读取成功)return datestr1# 商品库存管理系统 # 1. 添加商品# 2. 查看所有商品# 3. 修改商品库存# 4. 删除商品# 5. 保存数据到文件# 6. 从文件读取数据# 0. 退出程序# 请选择操作while True:print(str1)chooseinput(请选择操作)if choose1:add_product(products)elif choose2:show_products(products)elif choose3:update_stock(products)elif choose4:delete_product(products)elif choose5:save_data(products)elif choose6:load_data()elif choose0:break