【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】

这篇具有很好参考价值的文章主要介绍了【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】
👉博__主👈:米码收割机
👉技__能👈:C++/Python语言
👉公众号👈:测试开发自动化
👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术


Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】

本文是基于PyQT5开发的一款Python高校图书馆书籍管理系统,源码可以关注公众号,后台回复:高校图书馆管理系统 获取。



1. 登录功能设计

用户的登录界面主要是采用不同的方式布局来完成,主要用到的布局方式有:水平布局、垂直布局、栅格布局等。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】

主要的布局代码如下:

    def initUi(self):
        gLayout = QGridLayout(self)
        gLayout.setSpacing(8)
        gLayout.addWidget(self.title_area(), 0, 0)
        gLayout.addWidget(self.account_area(), 1, 0)
        gLayout.addWidget(self.button_area(), 3, 0)
        gLayout.addWidget(self.tips_area(), 2, 0)
        self.setLayout(gLayout)

1.1 登录校验

如果用户名输入错误,会提示当前用户名不存在。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】
用户的账号信息主要存储在本地的模拟数据库当中,每次登录是会与本地数据库做登录校验,如果符合要求,即可满足用户完成登录。

    def login_event(self):
        # 输入用户名和密码
        username = self.user_name_textbox.text()
        password = self.pass_word_textbox.text()

        with open('user.txt', 'r') as f:
            users = f.readlines()
            for user in users:
                if user.split(',')[0] == username:
                    if user.strip().split(',')[1] == hashlib.md5(password.encode()).hexdigest():
                        self.hide()
                        self.sub_lib = library_win.Library()
                        self.lib = library_win.LibraryApp(self.sub_lib)
                        self.lib.show()
                        return
                    else:
                        QMessageBox.information(self, 'Error', "密码错误!", QMessageBox.Yes)
                        return
            else:
                QMessageBox.information(self, 'Error', "用户名不存在!", QMessageBox.Yes)

2. 注册界面设计

注册界面主要包含注册类型、用户名、密码、确认密码注册界面展现形式如下:

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】

主要的布局代码如下:

    def register_msg(self):
        group_box = QGroupBox('', self)
        hlayout = QFormLayout(group_box)
        hlayout.addRow(self.register_type, self.register_combox)
        hlayout.addRow(self.register_name, self.register_name_edit)
        hlayout.addRow(self.register_pass_word, self.register_pass_word_edit)
        hlayout.addRow(self.register_pass_word_again, self.register_pass_word_again_edit)
        hlayout.addRow(self.register_email, self.register_email_edit)
        return group_box

2.1 注册校验

界面中增加了用户名密码的复杂度设置,如果用户输入的用户名和密码不符合预期,那么会弹窗提示。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】

主要采用正则表达式输入的信息的合规性进行校验,校验部分代码如下:

 def register_check(self):
        username = self.register_name_edit.text()
        password = self.register_pass_word_edit.text()
        password1 = self.register_pass_word_again_edit.text()

        # 使用正则表达式检查用户名和密码的规范性
        if not re.match(r'^[a-zA-Z]\w{4,19}$', username):
            QMessageBox.information(self, 'Error', "用户名不符合规范,由字母开头,由字母数字下划线组成,长度5-20", QMessageBox.Yes)
        elif not re.match(r'^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[a-zA-Z0-9]{8,16}$', password):
            QMessageBox.information(self, 'Error', "密码不符合规范,必须包含大写字母小写字母和数字,长度8-16", QMessageBox.Yes)
        elif password1 != password:
            QMessageBox.information(self, 'Error', "密码输入不一致!", QMessageBox.Yes)

如果用户通过校验,那么通过注册。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】


3. 图书馆管理功能

图书管管理界面,主要是对图书进行管理,主要包括的功能有添加书籍和删除书籍。书籍会存在本地的数据库中,下次登录是仍然会保留。

3.1 添加书籍

用户可以根据输入书名和作者以及书籍的ID来实现添加书籍,最后添加的书籍会显示在QTableWidget中。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】

主要代码如下:

    def update_book_list(self):
        self.table_widget.setRowCount(0)
        for book in self.library.list_books():
            row_position = self.table_widget.rowCount()
            self.table_widget.insertRow(row_position)
            self.table_widget.setItem(row_position, 0, QTableWidgetItem(book[0]))
            self.table_widget.setItem(row_position, 1, QTableWidgetItem(book[1]))
            self.table_widget.setItem(row_position, 2, QTableWidgetItem(book[2]))

3.2 删除书籍

用户输入对应书籍的ID,书籍可以被被永久删除。

【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】
主要代码如下:

def remove_book(self):
        text, ok = QInputDialog.getText(self, '删除书籍', '请输入书籍ID:')
        if ok:
            removed = self.library.remove_book(text.strip())
            if removed:
                self.update_book_list()

👇源码可以关注公众号,后台回复:高校图书馆管理系统 获取👇。文章来源地址https://www.toymoban.com/news/detail-479496.html

到了这里,关于【Python】Python高校图书馆书籍管理系统(登录、注册、功能源码设计)【独一无二】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python+基于python的图书馆管理系统-计算机毕业设计源码071718

    摘 要 随着时代的不断更新,社会的不断变换,信息技术的飞速发展,计算机科技技术也逐步走向成熟。图书馆管理系统对于当今社会来说是必不可少的一个信息组成部分,它可以管理大量图书、大量读者、让读者有条不紊的进行借阅图书,大大减小了工作量,并且提高了工

    2024年02月03日
    浏览(41)
  • 基于python图书馆管理系统和读者系统(附完整代码以及打包好的exe文件)

    摘要:         本文基于python的图书馆管理系统和读者系统,实现了登录、注册、忘记密码、书籍查询、借阅、归还、修改等功能,通过csv文件将数据存储在本地。注册时采用了邮箱验证码,模拟了现实场景。( 全部源代码地址见文末 )如果有其他奇思妙想或者bug欢迎提

    2024年02月07日
    浏览(33)
  • 实战 图书馆系统管理案例

    config :敏感的配置一般都是在配置中心配置,比如consul或者阿波罗上面 controller :写一些handler的,拿到参数要去调用service层的逻辑。( 只负责接受参数,怎么绑定参数,要去调用哪个service的,handler的一个入口 ) service: service层才是正真的业务处理层 。调用dao层的增删改

    2024年02月11日
    浏览(34)
  • Java 实现图书馆管理系统

    目录 一:创建对象 1.学生类对象Student : 2.图书类对象book : 3.管理员类对象OP: 二.创建主要交互界面MainMenu,并实现主界面功能 1.创建交互界面: 2.实现主界面功能: 三:创建OP管理界面: 1.创建主要交互界面及实现\\\"管理学生\\\"功能OPmenu: (1).交互界面: (2):实现\\\"管理学生\\\"功能: 2.实现\\\"管理

    2024年02月12日
    浏览(31)
  • C++图书馆管理系统(简单版)

    实用的图书馆管理系统应该至少包括一下功能: 1、上传:新进图书以及基本信息的输入 2、删除:旧图书以及基本信息的删除 3、显示:显示图书馆已有的所有图书 4、查找:查询要借阅的图书信息 5、借阅:实现用户办理借阅手续 6、归还:实现用户办理归还手续 系统以菜单

    2024年02月09日
    浏览(37)
  • java项目-图书馆管理系统源码

    作者主页:夜未央5788  简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码   项目介绍 本毕业设计运用了使用技术:spring mvc+spring+hibernate,数据库使用了当前较为流行的Mysql5.7。根据本校图书馆的工作流程与实际的需求和特色,本系统需满足以下几个方

    2024年02月08日
    浏览(33)
  • 用C++实现图书馆管理系统

    该程序包含一个 `Book` 类,代表图书馆中的书籍,具有标题、作者、出版商、出版年份和可用性属性。程序中还定义了一个 `bookList` 向量,用于存储图书馆中的所有书籍。 程序的 `main` 函数通过循环显示菜单,然后根据用户的选择调用相应的函数。用户可以选择添加新书籍、

    2024年02月12日
    浏览(31)
  • 基于JavaWeb的图书馆管理系统

    🍅 作者主页:

    2024年02月05日
    浏览(32)
  • JavaWeb期末项目 图书馆管理系统

    1 项目基本信息 1.1 项目名称 图书馆管理系统 1.2 开发运行环境 Window 10 64位 JDK 1.8.0 Eclipse 4.8版本 MySql 5.5 Tomcat 9.0 2 项目需求分析 2.1 学生登录部分 (1)学生注册:在进入图书馆前必须要登录,如果没有学号则要注册,注册时系统会将用户填写的学号与数据库里面的数据对比,

    2024年02月10日
    浏览(32)
  • 用C++实现一个图书馆管理系统

    下图为普通读者的功能 下图为图书馆管理员所拥有的功能 图中所示功能均已实现,不再一一展示,文末有项目源码 1 、 用户进入系统 用户进入系统的前提是必须先登录或者注册 2、 不同身份有不同功能的使用权 普通读者权限较小,图书管理者拥有较高权限,还设有高级管

    2023年04月13日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包