以下是一个简单的图书借阅管理系统的Python实现,不依赖任何外部库或网址,功能包括图书管理、借阅、归还和查询:

图书借阅管理系统

python

class Book:

def __init__(self, book_id, title, author, status="available"):

self.book_id = book_id #图书ID

self.title = title #书名

self.author = author #作者

self.status = status #状态(available/borrowed)

def __str__(self):

return f"ID: {self.book_id} |书名: {self.title} |作者: {self.author} |状态: {'可借阅' if self.status == 'available' else '已借出'}"

class Library:

def __init__(self):

self.books = {} #图书库{ID: Book对象}

def add_book(self, book_id, title, author):

"""添加图书"""

if book_id in self.books:

print("❌ 该图书ID已存在!")

else:

self.books[book_id] = Book(book_id, title, author)

print(f"✅ 成功添加图书: {title}")

def remove_book(self, book_id):

"""删除图书"""

if book_id in self.books:

del self.books[book_id]

print(f"✅ 已删除图书ID: {book_id}")

else:

print("❌ 图书不存在!")

def borrow_book(self, book_id):

"""借阅图书"""

if book_id not in self.books:

print("❌ 图书不存在!")

elif self.books[book_id].status == "borrowed":

print("❌ 该图书已被借出!")

else:

self.books[book_id].status = "borrowed"

print(f"✅ 成功借阅图书: {self.books[book_id].title}")

def return_book(self, book_id):

"""归还图书"""

if book_id not in self.books:

print("❌ 图书不存在!")

elif self.books[book_id].status == "available":

print("❌ 该图书未被借出!")

else:

self.books[book_id].status = "available"

print(f"✅ 成功归还图书: {self.books[book_id].title}")

def search_book(self, keyword):

"""搜索图书(支持书名或作者)"""

results = []

for book in self.books.values():

if keyword.lower() in book.title.lower() or keyword.lower() in book.author.lower():

results.append(book)

if results:

print("\n�� 搜索结果:")

for book in results:

print(book)

else:

print("❌ 未找到匹配的图书!")

def list_all_books(self):

"""列出所有图书"""

if not self.books:

print("�� 图书馆目前没有图书!")

else:

print("\n�� 所有图书列表:")

for book in self.books.values():

print(book)

def main():

library = Library()

while True:

print("\n===图书借阅管理系统===")

print("1.添加图书")

print("2.删除图书")

print("3.借阅图书")

print("4.归还图书")

print("5.搜索图书")

print("6.查看所有图书")

print("7.退出系统")

choice = input("请选择操作(1-7): ").strip()

if choice == "1":

book_id = input("输入图书ID: ").strip()

title = input("输入书名: ").strip()

author = input("输入作者: ").strip()

library.add_book(book_id, title, author)

elif choice == "2":

book_id = input("输入要删除的图书ID: ").strip()

library.remove_book(book_id)

elif choice == "3":

book_id = input("输入要借阅的图书ID: ").strip()

library.borrow_book(book_id)

elif choice == "4":

book_id = input("输入要归还的图书ID: ").strip()

library.return_book(book_id)

elif choice == "5":

keyword = input("输入搜索关键词(书名或作者): ").strip()

library.search_book(keyword)

elif choice == "6":

library.list_all_books()

elif choice == "7":

print("�� 感谢使用图书借阅管理系统,再见!")

break

else:

print("❌ 无效的输入,请重新选择!")

if __name__ == "__main__":

main()

功能说明

图书管理

添加图书(add_book)

删除图书(remove_book)

查看所有图书(list_all_books)

借阅与归还

借阅图书(borrow_book)

归还图书(return_book)

搜索功能

支持按书名或作者搜索图书(search_book)

状态跟踪

每本图书有available(可借阅)或borrowed(已借出)状态

示例运行

===图书借阅管理系统===

1.添加图书

2.删除图书

3.借阅图书

4.归还图书

5.搜索图书

6.查看所有图书

7.退出系统

请选择操作(1-7): 1

输入图书ID: 001

输入书名:三体

输入作者:刘慈欣

✅ 成功添加图书:三体

请选择操作(1-7): 6

��所有图书列表:

ID: 001 |书名:三体|作者:刘慈欣|状态:可借阅

请选择操作(1-7): 3

输入要借阅的图书ID: 001

✅ 成功借阅图书:三体

这个系统完全基于Python原生实现,无需任何外部依赖或网络连接,适合本地运行和管理小型图书库。你可以根据需要扩展功能(如添加借阅记录、用户管理等)。