python图书管理系统设计,python写图书管理系统

这篇文章主要介绍了如何python图书管理系统界面,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。

0. 简介

这是这学期一门关于python的课程的大作业,我用了pyqt5来做界面,实现了一个简单的图书管理系统,其功能包括图书信息和读者信息的增删查找,源代码放在最后。

1.实现思路与基本架构

该项目的实现主要经过了以下几步:

step1 界面设计

首先设计各个模块的位置以及界面的安排python画六瓣花。经过考虑,我设计了四个模块,分别是图书信息维护、读者信息维护、图书信息查询、读者信息查询。
图书信息维护模块包含了图书信息的添加,有从文件中添加和自己手动添加两种方式。读者信息维护也同理。
而图书信息查询模块则是输入要查询的图书信息,在图书馆中进行图书的查阅,输出图书的各种信息。读者信息查询也是一样的。

step2 数据结构设计

为了便于之后的操作,数据结构我设置的比较精细。大体来说,整个主程序(不包括界面部分)使用了三个类,分别是Library类、reader类和book类。具体的数据结构框架如下图。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述

step3 相关函数接口编写

在定义完数据结构后,需要对Library类定义一些方法,便于后面与图形界面的交互操作。这里我写了一些操作接口,包含drop_reader(),search_book()等操作。

step4 整合界面

这一步需要将之前写的界面和主程序进行整合,并定义槽函数,将主程序的函数与界面连接起来,完成图形化交互。

2. 程序运行逻辑

程序的运行流程如下:

step1

利用pickle模块从数据中实例化Library类,并实例化My_window类。

step2

用户在主菜单中点击相应的模块跳转到对应的frame

step3

在每个功能区等待用户输入数据,输入数据完成点击button触发对应的事件函数,并进行相应的数据操作。

step4

点击“退出系统”按键后,利用pickle模块将图书馆实例保存到数据文件中,下一次打开程序时会自动读取。

3. 操作说明
3.1 图书信息维护界面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述

该界面可以实现图书信息的批量读取以及单条信息的添加。
如果要批量读取图书信息,只需将文件放入路径下的/data文件夹,并输入对应文件名,点击导入即可。
文件格式如下:

三体 978 重庆出版社 2008 刘慈欣
昆虫记 546 商务印书馆 2012 法布尔
童年 277 商务印书馆 2014 高尔基
电磁学 3-43 中国科学技术大学出版社 2017 叶邦角
量子力学学习指导 413 中国科学技术大学出版社 2019 张鹏飞
固体物理学 4834 高等教育出版社 1988 黄昆

如果需要添加单条读者信息,只需要在对应输入框内写好图书信息,点击添加图书即可。

3.2 读者信息维护界面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述
操作方式同上。
读者信息文件格式如下:

张三 13728574382 是
安义 15709122812 是
黄文 938123882 否
王子 289871912 是
何云零 13827005831 否
3.3 图书信息查询界面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述

该页面可以实现图书信息的查询,图书的借阅、入库、出库、删除、修改
在输入要查询的图书信息后,如果输入的信息正确,将会显示查找到的图书,并附带有一定的操作。

在这里插入图片描述

点击对应按钮可以对图书进行相应的操作。

3.4 读者信息查询界面

在这里插入图片描述

该界面可以实现读者借阅记录的查询,读者信息的修改以及删除

用法同上。

源代码:https://gitee.com/ignorejjj/book/tree/master

  • 24
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值