当前位置: 首页 > article >正文

使用python实现图书管理系统

以下是一个简单的使用Python实现的图书管理系统示例,包含图书的添加、查询、删除等基本功能:

# 定义图书类
class Book:
    def __init__(self, title, author, isbn):
        self.title = title
        self.author = author
        self.isbn = isbn

    def __str__(self):
        return f"Title: {self.title}, Author: {self.author}, ISBN: {self.isbn}"


# 图书管理系统类
class Library:
    def __init__(self):
        self.books = []

    def add_book(self, book):
        self.books.append(book)
        print(f"{book.title} has been added to the library.")

    def search_book(self, keyword):
        found_books = []
        for book in self.books:
            if keyword.lower() in book.title.lower() or keyword.lower() in book.author.lower() or keyword.lower() in book.isbn.lower():
                found_books.append(book)
        if found_books:
            print("The following books were found:")
            for book in found_books:
                print(book)
        else:
            print("No books matching the keyword were found.")

    def delete_book(self, isbn):
        for book in self.books:
            if book.isbn == isbn:
                self.books.remove(book)
                print(f"{book.title} has been removed from the library.")
                return
        print("Book with the given ISBN not found in the library.")


# 测试示例
if __name__ == "__main__":
    library = Library()

    book1 = Book("Python Crash Course", "Eric Matthes", "9781593276034")
    book2 = Book("The Great Gatsby", "F. Scott Fitzgerald", "9780743273565")

    library.add_book(book1)
    library.add_book(book2)

    library.search_book("python")
    library.delete_book("9780743273565")
    library.search_book("gatsby")


在这个示例中:

  1. Book
    • 这个类用于表示图书对象。
    • 它有三个属性:title(书名)、author(作者)和isbn(国际标准书号)。
    • __str__方法用于定义当打印Book对象时的输出格式。
  2. Library
    • 这个类用于管理图书集合。
    • 它有一个属性books,是一个列表,用于存储Book对象。
    • add_book方法用于向图书馆添加图书。
    • search_book方法用于根据关键字(可以是书名、作者或ISBN)搜索图书。
    • delete_book方法用于根据ISBN删除图书。
  3. 测试部分
    • if __name__ == "__main__"语句块中,创建了一个Library实例,并进行了添加图书、搜索图书和删除图书的操作测试。

http://www.kler.cn/news/354677.html

相关文章:

  • Unity动画系统
  • 外包干了3周,技术退步太明显了。。。。。
  • 使用React Router实现前端的权限访问控制
  • 【Flutter】Dart:异步
  • docker容器里的时间不对,linux解决方案
  • 机器学习——向量化
  • 学习第三十六行
  • 【实战案例】树形字典结构数据的后端解决方案
  • 雷达数据与影像数据直观对比
  • YOLO的更新迭代
  • 基于SpringBoot的企业客户管理系统的设计与实现(论文+源码)_kaic
  • 软件测试CNAS实验室软件维护性测试作业指导书怎么写
  • AI大模型与相对论的结合点的思考、应用及相对论原理与公式表达
  • C++之《剑指offer》学习记录(9):字符串替换空格
  • 3D Slicer 教程五 ---- 基本功能介绍(二)
  • 五款软件神器
  • 萱仔求职复习系列——力扣
  • KafKa 集群【docker compose】
  • 刚刚,ChatGPT推出Windows客户端!
  • 111 - Lecture4