用python教材销售系统算法代码
时间: 2023-10-02 22:14:00 浏览: 39
以下是一个简单的用Python实现的教材销售系统的算法代码示例:
```
# 导入所需库
import random
# 定义教材类
class Book:
def __init__(self, id, name, price):
self.id = id
self.name = name
self.price = price
# 定义购物车类
class ShoppingCart:
def __init__(self):
self.books = []
# 添加教材到购物车
def add_book(self, book):
self.books.append(book)
# 从购物车删除教材
def remove_book(self, book):
self.books.remove(book)
# 计算购物车总价
def calculate_total_price(self):
total_price = 0
for book in self.books:
total_price += book.price
return total_price
# 定义订单类
class Order:
def __init__(self, user_id, books, total_price):
self.user_id = user_id
self.books = books
self.total_price = total_price
# 生成订单号
def generate_order_number(self):
return 'Order' + str(random.randint(100000, 999999))
# 定义用户类
class User:
def __init__(self, id, name):
self.id = id
self.name = name
# 初始化教材列表
books = [Book(1, 'Python基础教程', 50), Book(2, 'Python进阶教程', 80), Book(3, 'Python爬虫教程', 100)]
# 初始化用户列表
users = [User(1, '小明'), User(2, '小红'), User(3, '小刚')]
# 初始化购物车和订单为空
shopping_cart = ShoppingCart()
order = None
# 用户登录
def login(user_id):
for user in users:
if user.id == user_id:
return user
return None
# 用户下单
def place_order(user_id):
user = login(user_id)
if user:
# 生成订单
global order
order = Order(user.id, shopping_cart.books, shopping_cart.calculate_total_price())
order_number = order.generate_order_number()
print('订单号:', order_number)
print('教材列表:')
for book in order.books:
print('教材ID:', book.id, '教材名称:', book.name, '教材价格:', book.price)
print('总价:', order.total_price)
# 清空购物车
shopping_cart.books = []
else:
print('用户未登录!')
# 用户登录
user_id = 1
user = login(user_id)
if user:
print('用户', user.name, '登录成功!')
else:
print('用户登录失败!')
# 添加教材到购物车
book1 = books[0]
book2 = books[1]
shopping_cart.add_book(book1)
shopping_cart.add_book(book2)
print('教材', book1.name, '和教材', book2.name, '已添加到购物车!')
# 删除教材
shopping_cart.remove_book(book1)
print('教材', book1.name, '已从购物车删除!')
# 查看购物车
print('当前购物车教材列表:')
for book in shopping_cart.books:
print('教材ID:', book.id, '教材名称:', book.name, '教材价格:', book.price)
# 用户下单
place_order(user_id)
```
这个代码示例实现了教材销售系统的基本功能,包括用户登录、添加教材到购物车、从购物车删除教材、查看购物车和下单等。可以根据实际需求进行修改和扩展。