改进购物车案例,将买书改成买课程,在查看购物车页面里显示购买的课程名、课时数及总金额。请写出相应代码。
时间: 2024-09-23 21:11:06 浏览: 11
在这个改进的购物车案例中,我们可以假设有一个`Course`类表示课程,包含`name`(课程名称)、`hours`(课时数)和`price`(单价)属性。购物车`ShoppingCart`需要维护一个课程列表,并能添加、删除和计算总价。这里给出一个简单的Python代码示例:
```python
class Course:
def __init__(self, name, hours, price):
self.name = name
self.hours = hours
self.price = price
class ShoppingCart:
def __init__(self):
self.courses = []
def add_course(self, course):
self.courses.append(course)
def remove_course(self, course_name):
self.courses = [c for c in self.courses if c.name != course_name]
def total_amount(self):
return sum([course.price * course.hours for course in self.courses])
def view_cart(self):
cart_content = []
for course in self.courses:
cart_content.append(f"课程名: {course.name}, 课时数: {course.hours}, 总金额: {course.price * course.hours}")
return "\n".join(cart_content)
# 示例:
book1 = Course("Python基础", 40, 10)
book2 = Course("数据结构", 60, 15)
cart = ShoppingCart()
cart.add_course(book1)
cart.add_course(book2)
print("购物车内容:")
print(cart.view_cart())
# 删除一本书
cart.remove_course("Python基础")
print("\n修改后的购物车:")
print(cart.view_cart())
```