这段代码并不需要用户输入,它是一个样例程序,会自动运行并输出结果。如果你想测试其他功能,可以在代码中添加相应的操作,并运行程序。例如: 复制 book4 = Book('Pride and Prejudice', 'Jane Austen', '978-0486284736') library.add_book(book4) print(library.search_book_by_author('Jane Austen')) checked_out = library.checkout_book(book4) print(f"Book checked out: {checked_out}") returned = library.return_book(book4) print(f"Book returned: {returned}") 这样就添加了一本新书,然后搜索作者为“Jane Austen”的书籍,借出一本书并归还了它,并输出了相应的结果。能不能把加入程序给我
时间: 2023-12-03 09:46:11 浏览: 31
当然可以,以下是完整的程序代码:
```python
class Book:
def __init__(self, title, author, isbn):
self.title = title
self.author = author
self.isbn = isbn
def __str__(self):
return f"{self.title} by {self.author}"
class Library:
def __init__(self):
self.books = []
def add_book(self, book):
self.books.append(book)
def search_book_by_title(self, title):
results = []
for book in self.books:
if title.lower() in book.title.lower():
results.append(book)
return results
def search_book_by_author(self, author):
results = []
for book in self.books:
if author.lower() in book.author.lower():
results.append(book)
return results
def checkout_book(self, book):
if book in self.books:
self.books.remove(book)
return book
else:
return None
def return_book(self, book):
self.books.append(book)
return book
# sample usage
book1 = Book('The Great Gatsby', 'F. Scott Fitzgerald', '978-0743273565')
book2 = Book('To Kill a Mockingbird', 'Harper Lee', '978-0446310789')
book3 = Book('1984', 'George Orwell', '978-0451524935')
library = Library()
library.add_book(book1)
library.add_book(book2)
library.add_book(book3)
print(library.search_book_by_title('the'))
print(library.search_book_by_author('scott fitzgerald'))
book4 = Book('Pride and Prejudice', 'Jane Austen', '978-0486284736')
library.add_book(book4)
print(library.search_book_by_author('Jane Austen'))
checked_out = library.checkout_book(book4)
print(f"Book checked out: {checked_out}")
returned = library.return_book(book4)
print(f"Book returned: {returned}")
```
运行上述代码,会依次输出搜索标题包含“the”的书籍、搜索作者为“scott fitzgerald”的书籍、搜索作者为“Jane Austen”的书籍、借出一本书并输出相应信息、归还一本书并输出相应信息。