根据菜单完成购物平台的商品查看,将商品加入购物车,查看购物车信息,修改购物车中某商品的数量,将商品从购物车中移除,清空购物车的Python程序
时间: 2023-12-01 15:03:12 浏览: 74
好的,我可以帮你解决这个问题。首先,我们需要创建一个商品类(Item)来存储商品的信息,包括商品名称、价格、数量等。代码如下:
```python
class Item:
def __init__(self, name, price, quantity):
self.name = name
self.price = price
self.quantity = quantity
```
接下来,我们需要创建一个购物车类(Cart)来管理购物车中的商品。购物车类包括添加商品、移除商品、修改商品数量等功能。代码如下:
```python
class Cart:
def __init__(self):
self.items = []
def add_item(self, item):
self.items.append(item)
def remove_item(self, item):
self.items.remove(item)
def change_quantity(self, item, quantity):
item.quantity = quantity
def clear_cart(self):
self.items = []
def get_total_price(self):
total_price = 0
for item in self.items:
total_price += item.price * item.quantity
return total_price
def __str__(self):
cart_str = ""
for item in self.items:
cart_str += f"{item.name} - {item.price}元 x {item.quantity}个\n"
cart_str += f"总价: {self.get_total_price()}元"
return cart_str
```
最后,我们需要创建一个菜单类(Menu)来展示商品列表,并提供添加商品、查看购物车、修改商品数量、移除商品、清空购物车等功能。代码如下:
```python
class Menu:
def __init__(self):
self.cart = Cart()
self.items = [
Item("商品1", 10, 5),
Item("商品2", 20, 3),
Item("商品3", 30, 2),
Item("商品4", 40, 1),
Item("商品5", 50, 4)
]
def show_items(self):
print("商品列表:")
for i, item in enumerate(self.items):
print(f"{i + 1}. {item.name} - {item.price}元")
def add_item_to_cart(self, item_index, quantity):
item = self.items[item_index - 1]
item.quantity = quantity
self.cart.add_item(item)
print(f"{item.name} 已添加到购物车")
def show_cart(self):
print("购物车:")
print(self.cart)
def change_cart_item_quantity(self, item_index, quantity):
item = self.cart.items[item_index - 1]
self.cart.change_quantity(item, quantity)
print(f"{item.name} 的数量已修改为 {quantity}")
def remove_cart_item(self, item_index):
item = self.cart.items[item_index - 1]
self.cart.remove_item(item)
print(f"{item.name} 已从购物车移除")
def clear_cart(self):
self.cart.clear_cart()
print("购物车已清空")
menu = Menu()
while True:
print("\n欢迎来到购物平台!")
print("1. 查看商品列表")
print("2. 添加商品到购物车")
print("3. 查看购物车")
print("4. 修改购物车中商品的数量")
print("5. 将商品从购物车中移除")
print("6. 清空购物车")
print("7. 退出程序")
choice = input("请选择操作:")
if choice == "1":
menu.show_items()
elif choice == "2":
item_index = int(input("请输入要添加到购物车的商品编号:"))
quantity = int(input("请输入要添加的数量:"))
menu.add_item_to_cart(item_index, quantity)
elif choice == "3":
menu.show_cart()
elif choice == "4":
item_index = int(input("请输入要修改数量的商品编号:"))
quantity = int(input("请输入新的数量:"))
menu.change_cart_item_quantity(item_index, quantity)
elif choice == "5":
item_index = int(input("请输入要移除的商品编号:"))
menu.remove_cart_item(item_index)
elif choice == "6":
menu.clear_cart()
elif choice == "7":
break
else:
print("无效操作,请重新输入")
```
这样就完成了购物平台的 Python 程序。
阅读全文