有Book类,并定义书籍若干本,信息如下所示,请定义一个 成类,有属性成员(author, name,price) 请定义成员的方法和构造方法等方法,请编程实现便得书籍按价格降序输出,
时间: 2024-02-19 21:58:29 浏览: 104
一个简单的,按类别,按作者,按出版社,按书名,图书查询系统.
3星 · 编辑精心推荐
好的,我可以帮你实现这个需求。以下是代码实现:
```python
class Book:
def __init__(self, author, name, price):
self.author = author
self.name = name
self.price = price
def __repr__(self):
return f"{self.author}: {self.name} - {self.price}"
class Bookstore:
def __init__(self, books):
self.books = books
def display_books_by_price(self):
sorted_books = sorted(self.books, key=lambda book: book.price, reverse=True)
for book in sorted_books:
print(book)
# 测试代码
books = [
Book("J.K. Rowling", "Harry Potter and the Philosopher's Stone", 35.5),
Book("J.R.R. Tolkien", "The Lord of the Rings", 89.9),
Book("George Orwell", "Animal Farm", 19.9),
Book("Harper Lee", "To Kill a Mockingbird", 28.5),
]
bookstore = Bookstore(books)
bookstore.display_books_by_price()
```
输出结果为:
```
J.R.R. Tolkien: The Lord of the Rings - 89.9
J.K. Rowling: Harry Potter and the Philosopher's Stone - 35.5
Harper Lee: To Kill a Mockingbird - 28.5
George Orwell: Animal Farm - 19.9
```
以上代码中,我们定义了一个 `Book` 类和一个 `Bookstore` 类。`Book` 类有三个属性成员 `author`,`name` 和 `price`,还有一个构造方法 `__init__`。`Bookstore` 类有一个属性成员 `books` 和一个方法 `display_books_by_price`,该方法按照价格降序输出所有书籍。在测试代码中,我们创建了一些书籍,并将它们传递给 `Bookstore` 对象,然后调用 `display_books_by_price` 方法输出结果。
阅读全文