python图书馆管理系统
时间: 2023-05-25 19:06:19 浏览: 51
以下是一个Python图书馆管理系统的示例代码,实现了以下功能:
- 添加图书
- 删除图书
- 查找图书
- 显示所有图书
- 借阅图书
- 归还图书
```python
class Book:
def __init__(self, title, author, book_id):
self.title = title
self.author = author
self.book_id = book_id
self.is_borrowed = False
class Library:
def __init__(self):
self.books = []
def add_book(self, title, author, book_id):
book = Book(title, author, book_id)
self.books.append(book)
print(f"图书 {title} 添加成功")
def remove_book(self, book_id):
for book in self.books:
if book.book_id == book_id:
if book.is_borrowed:
print("抱歉,该图书已被借阅,无法删除")
else:
self.books.remove(book)
print(f"图书 {book.title} 删除成功")
return True
else:
print("抱歉,未找到该图书")
return False
def find_book(self, title):
for book in self.books:
if book.title == title:
print(f"图书编号: {book.book_id}\n作者:{book.author}\n是否借阅: {book.is_borrowed}")
return book
else:
print("抱歉,未找到该图书")
return None
def show_all_books(self):
if not self.books:
print("抱歉,图书馆暂无任何图书")
else:
for book in self.books:
print(f"图书编号: {book.book_id}\n书名:{book.title}\n作者:{book.author}\n是否借阅: {book.is_borrowed}")
def borrow_book(self, book_id):
for book in self.books:
if book.book_id == book_id:
if book.is_borrowed:
print(f"图书 {book.title} 已经被借出,请选择其他图书借阅")
else:
book.is_borrowed = True
print(f"图书 {book.title} 借阅成功")
return True
else:
print("抱歉,未找到该图书")
return False
def return_book(self, book_id):
for book in self.books:
if book.book_id == book_id:
book.is_borrowed = False
print(f"图书 {book.title} 归还成功")
return True
else:
print("抱歉,未找到该图书")
return False
library = Library()
while True:
print("欢迎使用图书馆管理系统!请选择以下操作:")
print("1. 添加图书\n2. 删除图书\n3. 查找图书\n4. 显示所有图书\n5. 借阅图书\n6. 归还图书\n7. 退出系统")
choice = input("请选择操作数字:")
if choice == '1':
title = input("请输入图书名称:")
author = input("请输入作者:")
book_id = input("请输入图书编号:")
library.add_book(title, author, book_id)
elif choice == '2':
book_id = input("请输入要删除的图书编号:")
library.remove_book(book_id)
elif choice == '3':
title = input("请输入要查找的图书名称:")
library.find_book(title)
elif choice == '4':
library.show_all_books()
elif choice == '5':
book_id = input("请输入要借阅的图书编号:")
library.borrow_book(book_id)
elif choice == '6':
book_id = input("请输入要归还的图书编号:")
library.return_book(book_id)
elif choice == '7':
break
else:
print("请输入正确的操作数字")
```