爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      Python图书信息管理系统(完整代码)

      首页 知识中心 软件开发 文章详情页

      Python图书信息管理系统(完整代码)

      2025-02-10 08:53:59 阅读次数:14

      书籍,图书,存储,用户

              引言:(假装也不是一个大学生课设)在数字化和信息化快速发展的今天,图书管理系统成为了图书馆、学校及个人图书收藏管理中不可或缺的工具。这类系统不仅能有效地管理大量的图书资料,还能提高图书检索、借阅和归还的效率,极大地方便了读者和管理员。随着编程技术的进步,特别是Python语言的普及,开发一个功能全面且用户友好的图书管理系统已变得更加容易和高效。

      系统需求分析

      一个完备的图书管理系统应该具备以下几个核心功能:

      • 图书管理:包括图书的添加、修改、删除和信息查询,能够记录图书的ISBN、标题、作者、出版社和库存等信息。
      • 借阅管理:实现图书借出和归还的管理,自动更新库存状态,记录借阅者信息和借阅时间。
      • 用户管理:区分管理员和普通用户,管理员具有全部管理权限,普通用户仅能查询图书和查看借阅状态。
      • 搜索功能:支持按书名、作者、ISBN等字段进行高效搜索。
      • 报表功能:自动生成图书借阅统计、库存报表等,帮助管理员快速获取图书流通和存储情况。

      技术选型

              本系统选择Python作为主要开发语言,因其简洁性、易学性及其丰富的库支持。本系统可以用于存储书籍信息,并提供方法来管理图书的增加、删除、显示和查询。该管理系统通过命令行与用户交互,用户可以通过简单的文本菜单进行操作。

      系统设计

      数据模型设计
      • Book:存储图书信息,字段包括book_id, title, author, publisher, isbn, stock。
      • User:存储用户信息,字段包括user_id, username, password, role。
      • Borrow:存储借阅信息,字段包括borrow_id, book_id, user_id, borrow_date, return_date。
      架构设计

      系统采用三层架构:

      • 表示层:负责与用户交互,提供图形界面。
      • 业务逻辑层:处理图书、用户和借阅的业务逻辑。
      • 数据访问层:与数据库进行交互,实现数据的增删改查。

      核心代码实现

      Book类

      Book类代表图书管理系统中的一个书籍条目。它包含四个属性:book_id, title, author, year_published,分别用于存储书籍ID、标题、作者和出版年份。此外,它还包括一个__str__方法,用于返回书籍的详细描述,方便打印和显示。

      class Book:
          def __init__(self, book_id, title, author, year_published):
              self.book_id = book_id
              self.title = title
              self.author = author
              self.year_published = year_published
      
          def __str__(self):
              return f"书籍ID: {self.book_id}, 标题: '{self.title}', 作者: {self.author}, 出版年份: {self.year_published}"
      
      BookManager类

      BookManager类是管理书籍的核心类。它包含一个字典books来存储所有的书籍对象,其中键是book_id,值是Book对象。类中定义的方法包括:

      • add_book: 添加一本书到字典中。如果书籍ID已存在,则输出错误消息。
      • remove_book: 根据书籍ID删除一本书。如果书籍ID不存在,则输出错误消息。
      • show_all_books: 打印所有存储的书籍信息。
      • find_book: 根据书籍ID查找并显示一本书的信息。如果书籍ID不存在,则输出错误消息。
      class BookManager:
          def __init__(self):
              self.books = {}
      
          def add_book(self, book):
              if book.book_id in self.books:
                  print("错误: 此书籍ID已存在。")
              else:
                  self.books[book.book_id] = book
                  print(f"已添加: {book}")
      
          def remove_book(self, book_id):
              if book_id in self.books:
                  del self.books[book_id]
                  print(f"已删除书籍ID {book_id}")
              else:
                  print("错误: 书籍ID未找到")
      
          def show_all_books(self):
              for book in self.books.values():
                  print(book)
      
          def find_book(self, book_id):
              if book_id in self.books:
                  print(f"找到书籍: {self.books[book_id]}")
              else:
                  print("未找到书籍。")
      
      主函数 main()

      主函数负责创建BookManager实例并提供一个命令行界面,让用户可以通过输入选择执行不同的操作,如添加书籍、删除书籍、显示所有书籍、查询书籍和退出程序。这通过一个循环实现,循环内部处理用户的输入和相应的功能调用。

      def main():
          book_manager = BookManager()
          while True:
              print("\n图书管理菜单:")
              print("1. 添加书籍")
              print("2. 删除书籍")
              print("3. 显示所有书籍")
              print("4. 查询书籍")
              print("5. 退出")
              choice = input("请输入选项: ")
      
              if choice == '1':
                  book_id = input("请输入书籍ID: ")
                  title = input("请输入书名: ")
                  author = input("请输入作者名: ")
                  year_published = input("请输入出版年份: ")
                  book_manager.add_book(Book(book_id, title, author, year_published))
              elif choice == '2':
                  book_id = input("请输入要删除的书籍ID: ")
                  book_manager.remove_book(book_id)
              elif choice == '3':
                  book_manager.show_all_books()
              elif choice == '4':
                  book_id = input("请输入要查询的书籍ID: ")
                  book_manager.find_book(book_id)
              elif choice == '5':
                  print("正在退出...")
                  break
              else:
                  print("无效选项,请输入1至5之间的数字。")
      

      完整项目

      class Book:
          def __init__(self, book_id, title, author, year_published):
              self.book_id = book_id
              self.title = title
              self.author = author
              self.year_published = year_published
      
          def __str__(self):
              return f"书籍ID: {self.book_id}, 标题: '{self.title}', 作者: {self.author}, 出版年份: {self.year_published}"
      
      class BookManager:
          def __init__(self):
              self.books = {}
      
          def add_book(self, book):
              if book.book_id in self.books:
                  print("错误: 此书籍ID已存在。")
              else:
                  self.books[book.book_id] = book
                  print(f"已添加: {book}")
      
          def remove_book(self, book_id):
              if book_id in self.books:
                  del self.books[book_id]
                  print(f"已删除书籍ID {book_id}")
              else:
                  print("错误: 书籍ID未找到")
      
          def show_all_books(self):
              for book in self.books.values():
                  print(book)
      
          def find_book(self, book_id):
              if book_id in self.books:
                  print(f"找到书籍: {self.books[book_id]}")
              else:
                  print("未找到书籍。")
      
      def main():
          book_manager = BookManager()
      
          while True:
              print("\n图书管理菜单:")
              print("1. 添加书籍")
              print("2. 删除书籍")
              print("3. 显示所有书籍")
              print("4. 查询书籍")
              print("5. 退出")
              choice = input("请输入选项: ")
      
              if choice == '1':
                  book_id = input("请输入书籍ID: ")
                  title = input("请输入书名: ")
                  author = input("请输入作者名: ")
                  year_published = input("请输入出版年份: ")
                  book_manager.add_book(Book(book_id, title, author, year_published))
              elif choice == '2':
                  book_id = input("请输入要删除的书籍ID: ")
                  book_manager.remove_book(book_id)
              elif choice == '3':
                  book_manager.show_all_books()
              elif choice == '4':
                  book_id = input("请输入要查询的书籍ID: ")
                  book_manager.find_book(book_id)
              elif choice == '5':
                  print("正在退出...")
                  break
              else:
                  print("无效选项,请输入1至5之间的数字。")
      
      if __name__ == "__main__":
          main()
      
      使用效果

      跑过了,很好用

      Python图书信息管理系统(完整代码)

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.csdn.net/qq_52213943/article/details/140182129,作者:昊昊该干饭了,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:Java Stream函数式编程案例图文详解

      下一篇:Python中的图像处理库

      相关文章

      2025-05-19 09:04:53

      【NetApp数据恢复】误操作导致NetApp存储的卷丢失,卷内虚拟机无法访问的数据恢复案例

      【NetApp数据恢复】误操作导致NetApp存储的卷丢失,卷内虚拟机无法访问的数据恢复案例

      2025-05-19 09:04:53
      存储 , 数据 , 数据恢复 , 解压
      2025-05-19 09:04:30

      TNS-01189: 监听程序无法验证用户

      TNS-01189: 监听程序无法验证用户

      2025-05-19 09:04:30
      用户 , 监听 , 验证
      2025-05-19 09:04:30

      开源与闭源:AI模型发展的两条路径

      开源与闭源:AI模型发展的两条路径

      2025-05-19 09:04:30
      开源 , 模型 , 用户
      2025-05-14 10:03:05

      Oracle数据库用户权限分析

      Oracle数据库用户权限分析

      2025-05-14 10:03:05
      Oracle , 分析 , 数据库 , 权限 , 用户
      2025-05-14 10:02:48

      SQL Server 账号管理1

      SQL Server 账号管理主要包含登录名、用户、架构、角色等管理。通过对账号的管理可以有效的提高数据库系统的安全性,规范运维及使用。

      2025-05-14 10:02:48
      Server , SQL , 对象 , 数据库 , 权限 , 用户
      2025-05-13 09:53:13

      mysql 存储函数及调用

      在MySQL中,存储函数(Stored Function)是一种在数据库中定义的特殊类型的函数,它可以从一个或多个参数返回一个值。存储函数在数据库层面上封装了复杂的SQL逻辑,使得在应用程序中调用时更加简单和高效。

      2025-05-13 09:53:13
      MySQL , 函数 , 存储 , 示例 , 触发器 , 语句 , 调用
      2025-05-13 09:49:27

      变量基础_变量场景

      变量基础_变量场景

      2025-05-13 09:49:27
      变量 , 场景 , 存储 , 学习 , 数据 , 编程语言
      2025-05-13 09:49:19

      脚本交互_脚本外交互_read基础

      脚本交互_脚本外交互_read基础

      2025-05-13 09:49:19
      read , 命令 , 基础知识 , 实践 , 小结 , 用户 , 输入
      2025-05-09 08:50:35

      springboot实战学习(11)(更新用户基本信息接口主逻辑)

      springboot实战学习(11)(更新用户基本信息接口主逻辑)

      2025-05-09 08:50:35
      接口 , 方法 , 更新 , 用户 , 请求
      2025-05-09 08:20:32

      MySQL——索引(概述和结构介绍)

      索引(index)是帮助 MySQL 高效获取数据的数据结构(是一种有序的数据结构)。

      2025-05-09 08:20:32
      Tree , 存储 , 引擎 , 数据结构 , 查询 , 索引 , 结构
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5256074

      查看更多

      最新文章

      TNS-01189: 监听程序无法验证用户

      2025-05-19 09:04:30

      变量基础_变量场景

      2025-05-13 09:49:27

      springboot实战学习(11)(更新用户基本信息接口主逻辑)

      2025-05-09 08:50:35

      基于springboot图书借阅管理系统【源码+数据库】

      2025-05-08 09:03:21

      基础—SQL—DCL(数据控制语言)之权限控制

      2025-05-07 09:10:01

      基础—SQL—DCL(数据控制语言)小结

      2025-05-07 09:09:52

      查看更多

      热门文章

      HTML5 本地存储DEMO ---localStorage

      2023-05-30 07:51:35

      java自定义接口方法的参数自动注入,比如@UserId Long userId、@LoginedUser User user

      2023-08-04 07:25:51

      XML简介

      2023-07-11 08:56:18

      《Spring Data 官方文档》6. Cassandra 存储库

      2023-07-07 08:10:19

      微信小程序-组件-.js文件

      2024-04-18 09:28:41

      “用户多次登录,账号冻结业务”功能实现(代码+详细注释)

      2024-03-26 08:11:30

      查看更多

      热门标签

      java Java python 编程开发 代码 开发语言 算法 线程 Python html 数组 C++ 元素 javascript c++
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      基于SpringBoot+Vue的传统文化网站的详细设计和实现

      为什么Redis-单线程模型效率也能那么高?

      C#中的序列化和反序列化

      基于SpringBoot+Vue+uniapp的个人财务系统的详细设计和实现

      TNS-01189: 监听程序无法验证用户

      基于SpringBoot+Vue的宠物用品交易平台的详细设计和实现

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号