用Python做一个图书管理系统
时间: 2023-10-12 16:21:18 浏览: 50
好的,我可以帮您解答这个问题。
要实现一个图书管理系统,需要考虑以下功能:
1. 添加书籍
2. 删除书籍
3. 修改书籍信息
4. 查询书籍信息
5. 显示所有书籍信息
下面是一个简单的Python图书管理系统的代码实现:
```
class Book:
def __init__(self, id, name, author, publisher, price):
self.id = id
self.name = name
self.author = author
self.publisher = publisher
self.price = price
class Library:
books = []
@classmethod
def add_book(cls, book):
cls.books.append(book)
@classmethod
def remove_book(cls, book_id):
for book in cls.books:
if book.id == book_id:
cls.books.remove(book)
break
@classmethod
def update_book(cls, book_id, name, author, publisher, price):
for book in cls.books:
if book.id == book_id:
book.name = name
book.author = author
book.publisher = publisher
book.price = price
break
@classmethod
def search_book(cls, book_id):
for book in cls.books:
if book.id == book_id:
return book
return None
@classmethod
def display_books(cls):
for book in cls.books:
print('ID:', book.id)
print('Name:', book.name)
print('Author:', book.author)
print('Publisher:', book.publisher)
print('Price:', book.price)
print('------')
if __name__ == '__main__':
book1 = Book(1, 'Python学习手册', 'Mark Lutz', '中国电力出版社', 99.00)
book2 = Book(2, 'Python基础教程', 'Magnus Lie Hetland', '电子工业出版社', 69.00)
Library.add_book(book1)
Library.add_book(book2)
Library.display_books()
Library.remove_book(2)
Library.update_book(1, 'Python编程从入门到实践', 'Eric Matthes', '人民邮电出版社', 78.00)
book = Library.search_book(1)
if book:
print('Book found!')
print('ID:', book.id)
print('Name:', book.name)
print('Author:', book.author)
print('Publisher:', book.publisher)
print('Price:', book.price)
else:
print('Book not found!')
Library.display_books()
```
这段代码中,Book类表示一本书,它有ID、名称、作者、出版社和价格等属性。Library类表示图书馆,它有一个类变量books,用于存储所有的书籍。Library类中的方法实现了添加、删除、修改、查询和显示所有书籍等功能。
在main函数中,我们创建了两本书并添加到图书馆中,然后显示所有书籍信息。接着我们删除了一本书,修改了另一本书的信息,然后查询了一本书的信息并显示出来。最后再次显示所有书籍的信息。
当然,这个图书管理系统还可以进一步完善,比如添加图形界面、支持数据库存储等。但是,以上代码已经可以实现基本的功能,您可以根据自己的需求进行修改和扩展。