**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
2
请输入增加商品信息:XXX XXX(示例:香蕉 5元)鸡蛋 1元
恭喜,添加新商品成功
**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
1
鸡蛋---1元
**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
3
请输入修改商品信息:XXX XXX(示例:香蕉 5元)鸡蛋 3元
<__main__.Goods object at 0x000001A37CBCEFD0>
恭喜,修改商品价格成功
**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
1
鸡蛋---3元
**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
4
请输入删除商品名称:XXX XXX(示例:香蕉)鸡蛋
恭喜,添加商品移出成功
**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
1
系统商品为空
**********************************************************************
输入序号代表你要做的操作:
1.查询所有商品
2.增加商品
3.修改商品
4.删除商品
5.退出系统
5
退出系统成功,欢迎下次使用!
# 商品管理系统
import sys
goods_list=[]
# 类
class Goods(object):
def __init__(self,name,price):
self.name=name
self.price=price
# 方法
def add_goods(goods_list,goods):
found_goods = [item for item in goods_list if item.name == goods.name]
if found_goods:
print("相同商品已存在,添加失败")
else:
goods_list.append(goods)
print("恭喜,添加新商品成功")
def delete_goods(goods_list, goods):
for item in goods_list:
if item.name == goods.name:
goods_list.remove(item)
print("恭喜,添加商品移出成功")
return
print("抱歉,移出商品在库里不存在")
def update_goods(goods_list,goods):
found_goods = [item for item in goods_list if item.name == goods.name]
if found_goods:
print(found_goods[0]) # 输出第一个匹配的 goods
found_goods[0].price=goods.price
print("恭喜,修改商品价格成功")
else:
print("抱歉,未找到对应的商品")
def select_goods(goods_list,goods):
if len(goods_list)>0:
for item in goods_list:
print(f"{item.name}---{item.price}")
else:
print("系统商品为空")
if __name__ == '__main__':
while True:
print("**********************************************************************")
input_res1=input("输入序号代表你要做的操作:\n1.查询所有商品\n2.增加商品\n3.修改商品\n4.删除商品\n5.退出系统\n")
if int(input_res1) == 1:
goods_temp=Goods("","")
select_goods(goods_list,goods_temp)
# 这里添加查询商品的代码
elif int(input_res1) == 2:
input_res_select=input("请输入增加商品信息:XXX XXX(示例:香蕉 5元)")
name,price=str(input_res_select).split(" ")
goods_temp = Goods("", "")
goods_temp.name=name
goods_temp.price=price
add_goods(goods_list,goods_temp)
# 这里添加增加商品的代码
elif int(input_res1) == 3:
input_res_select = input("请输入修改商品信息:XXX XXX(示例:香蕉 5元)")
name, price = str(input_res_select).split(" ")
goods_temp = Goods("", "")
goods_temp.name = name
goods_temp.price = price
update_goods(goods_list,goods_temp)
# 这里添加修改商品的代码
elif int(input_res1) == 4:
input_res_select = input("请输入删除商品名称:XXX XXX(示例:香蕉)")
name= str(input_res_select)
goods_temp = Goods("", "")
goods_temp.name = name
delete_goods(goods_list, goods_temp)
# 这里添加删除商品的代码
elif int(input_res1) == 5:
print("退出系统成功,欢迎下次使用!")
sys.exit(0)
# 这里添加退出系统的代码
else:
print("输入无效,请重新输入1-5之间的数字")
在日常的商店管理或小型电商系统中,商品管理是最基础也是最重要的功能之一。本文将带领大家使用Python面向对象编程思想,实现一个简易的商品管理系统。该系统包含商品的增删改查等基本功能,适合Python初学者学习和理解面向对象编程在实际项目中的应用。
我们实现的商品管理系统主要包含以下功能:
查询所有商品信息
添加新商品
修改商品价格
删除商品
退出系统
python
复制
下载
class Goods(object): def __init__(self,name,price): self.name=name self.price=price
这里我们定义了一个Goods
类,使用__init__
方法初始化商品对象,每个商品有两个属性:
name
:商品名称
price
:商品价格
python
复制
下载
def add_goods(goods_list,goods): found_goods = [item for item in goods_list if item.name == goods.name] if found_goods: print("相同商品已存在,添加失败") else: goods_list.append(goods) print("恭喜,添加新商品成功")
这段代码实现了商品添加功能,特点包括:
使用列表推导式检查商品是否已存在
避免重复添加同名商品
提供明确的用户反馈
python
复制
下载
def delete_goods(goods_list, goods): for item in goods_list: if item.name == goods.name: goods_list.remove(item) print("恭喜,添加商品移出成功") return print("抱歉,移出商品在库里不存在")
删除功能实现了:
遍历查找目标商品
成功删除后立即返回
未找到商品时给出提示
python
复制
下载
def update_goods(goods_list,goods): found_goods = [item for item in goods_list if item.name == goods.name] if found_goods: print(found_goods[0]) # 输出第一个匹配的 goods found_goods[0].price=goods.price print("恭喜,修改商品价格成功") else: print("抱歉,未找到对应的商品")
修改功能特点:
同样使用列表推导式查找商品
修改第一个匹配商品的price属性
提供修改前后的信息反馈
python
复制
下载
def select_goods(goods_list,goods): if len(goods_list)>0: for item in goods_list: print(f"{item.name}---{item.price}") else: print("系统商品为空")
查询功能实现了:
检查商品列表是否为空
格式化输出所有商品信息
空列表时的友好提示
python
复制
下载
if __name__ == '__main__': while True: print("**********************************************************************") input_res1=input("输入序号代表你要做的操作:\n1.查询所有商品\n2.增加商品\n3.修改商品\n4.删除商品\n5.退出系统\n") # 各功能分支处理...
主程序采用无限循环+条件分支的结构:
提供清晰的用户界面
根据用户输入调用相应功能
使用sys.exit(0)优雅退出系统
添加商品:
text
复制
下载
请输入增加商品信息:XXX XXX(示例:香蕉 5元) 苹果 3元 恭喜,添加新商品成功
查询商品:
text
复制
下载
苹果---3元
修改商品:
text
复制
下载
请输入修改商品信息:XXX XXX(示例:香蕉 5元) 苹果 4元 恭喜,修改商品价格成功
删除商品:
text
复制
下载
请输入删除商品名称:XXX XXX(示例:香蕉) 苹果 恭喜,添加商品移出成功
这个基础版本还可以进一步扩展:
数据持久化:使用文件或数据库保存商品数据
用户界面:使用Tkinter或PyQt开发图形界面
更多商品属性:如库存数量、商品分类等
用户权限:区分管理员和普通用户
交易功能:添加购物车和结算功能
通过这个简易商品管理系统的实现,我们学习了:
Python面向对象编程的基本应用
列表操作和条件判断
功能模块化的编程思想
用户交互设计的基本原则
这个项目虽然简单,但包含了实际开发中的许多核心概念,是Python入门学习的优秀实践案例。读者可以在此基础上继续扩展,打造功能更完善的商品管理系统。
完整代码已在上文展示,建议读者亲自输入并运行代码,加深对Python面向对象编程的理解。