广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python实现学生信息管理系统的示例代码
  • 671
分享到

Python实现学生信息管理系统的示例代码

Python 官方文档:入门教程 => 点击学习

摘要

目录前言正文一、新手小白的福利——零基础学生信息管理系统二、GUI界面化版本——Tkinter学生信息管理系统前言 夏天是用来告别的季

前言

夏天是用来告别的季节,因为毕业总在七月。那么七月之前的季节是用来干嘛的呢?

当然是用来做毕业设计的啦

今天还是写一些从简单到难的毕业设计或者课程作业项目源码分享给大家吧~相信每个毕业生或者结课学生都是需要这么一份计算机python项目滴哦~嗯哼,还是大众化的项目,学生信息管理系统分为几个版本分享给大家:

第一个版本就是新手小白的福利————零基础也能上手的项目课——学生信息管理系统。

第二个版本就是GUI界面化————Tkinter的学生信息管理系统。

正文

又是一年毕业季,学生信息管理系统——计算机毕设作品基本上都可以使用必备课设(超级大

众舒适的课设题目)今天小编给大家带来的两个版本,大家一起来看看差距大吗?

一、新手小白的福利——零基础学生信息管理系统

1)运行环境

小编使用的环境:python3PyCharm社区版。

第一款新手版本的学生信息管理系统是用:基本的数据类型与结构- 基本的逻辑控制语句组成。

所以是补需要安装什么第三方模块的。安装好Python环境跟Pycharm就可以直接开始敲代码了。

2)代码展示

"""
message = """
**************************************************
欢迎使用【学生信息管理系统】V1.0
请选择你想要进行的操作
1. 新建学生信息
2. 显示全部信息
3. 查询学生信息
4. 删除学生信息
5. 修改学生信息

0. 退出系统
**************************************************
"""

students_list = [
    {'name': '李四', 'chinese': '65', 'math': '65', 'english': '65', 'total': 195},
    {'name': '王五', 'chinese': '65', 'math': '65', 'english': '65', 'total': 195},
    {'name': '张三', 'chinese': '65', 'math': '65', 'english': '65', 'total': 195},
]

# 1. 启动之后显示提示信息
# 进入系统之前加载本地的文件数据

# 2. 进入系统的操作页面
while True:
    print(message)
    action = input('请选择你想要进行的操作:')
    if action == '1':
        print('#    2.1 新增数据')
        # 新增数据需要录入学员的信息
        name = input('请输入学员的姓名:')
        math = input('请输入学员的数学成绩:')
        chinese = input('请输入学员的语文成绩:')
        english = input('请输入学员的英语成绩:')
        print(name, math, chinese, english)
        student = {
            'name': name,
            'math': math,
            'chinese': chinese,
            'english': english,
        }
        students_list.append(student)
        # # 一个人的数据用字典,多个人的数据用列表
        # # 没有好与不好,只有合不合适
        # # student = [name, math, chinese, english]
        # # print(student[1])
        # print(student['math'])  # 字典非常适合存储个人的数据
        # students = [student]
        # # 可以什么记录学生成绩? 数据库
        # # 增删改查 操作 txt ? csv 网页
        # print(students_list)
    elif action == '2':
        print('#    2.2 查询所有学生成绩')
        # 显示所有的学生信息
        # 先听思路,课后那录播再复习一遍,有不懂的可以问一下木子老师
        # print(students_list)
        print('姓名    语文    数学    英语')
        for student in students_list:
            print(f"{student['name']}    {student['chinese']}      {student['math']}      {student['english']}")

    elif action == '3':
        print('#    2.3 查询学生信息')
        name = input('请输入需要查询的学生姓名:')
        flag = False  # 默认的情况下没有找到 记录一下学员有没有找到
        # 去所有的学生列表里面去找到对应名字的学生
        for student in students_list:  # 遍历三个学员,三个学员都没有找到,才是没有找到
            # 如果变量的学生名字与输入的学生名字是一样的,就是找到了
            if student['name'] == name:
                print('姓名    语文    数学    英语')
                print(f"{student['name']}    {student['chinese']}      {student['math']}      {student['english']}")
                flag = True  # 找到了之后改变前面的标志位
                # 不管怎么覆盖都不能改查 false

        # 如果没有找到
        if not flag:
            print(f'{name} 学员不存在')

    elif action == '4':
        print('#    2.4 删除学生信息')
        # 先找到学员,然后再删除学员
        name = input('请输入需要删除的学生姓名:')
        flag = False
        for student in students_list:
            if student['name'] == name:
                # 找到之后需要删除
                students_list.remove(student)
                flag = True

        if not flag:
            print(f'{name} 学员不存在, 无法删除')

    elif action == '5':
        print('#    2.5 修改学生信息')
        name = input('请输入需要修改的学生姓名:')
        flag = False
        for student in students_list:
            if student['name'] == name:
                # 修改需要重新输入信息
                # name = input('请输入学员的姓名:')
                math = input('请输入学员的数学成绩:')
                chinese = input('请输入学员的语文成绩:')
                english = input('请输入学员的英语成绩:')
                # student['name'] = name
                student['math'] = math
                student['chinese'] = chinese
                student['english'] = english
                flag = True

        if not flag:
            print(f'{name} 学员不存在, 无法修改')
            """
                编程思维,你的思维没有转化过来
                怎么培养编程思维
                    1. 多看书、多看视频、多写案例
                    2. 从量变到质变
                    
                    不能只停留在基础
            """
    elif action == '0':
        print('#    2.0 退出系统')
        # 退出之前将数据保存到本地

        break
    else:
        print('请选择正确的操作')
# 3. 结束程序

3)效果展示

新手版本运行截图——

​进行新建学习信息操作截图——

其他的内容就不一一截图了哈,大家可以自己拿代码运行进行尝试。

二、GUI界面化版本——Tkinter学生信息管理系统

1)运行环境

本文用到的环境如下—— Python3、Pycharm社区版,第三方模块:Tkinter。部分自带的库

只要安装完 Python就可以直接使用了,需要安装 的库的话看教程下?

 安装模块:

pip install +模块名 镜像源安装:pip install -i https://pypi.douban.com/simple/+模块名

(之前有说过安装报错的几种方式跟解决方法,不会安装的可以去看下,还有很多国内镜像源也有文章的) 

2)代码展示

登录页面:​

import tkinter as tk
import tkinter.messagebox
from MainPage import MainPage

"""
"""
# 一张画纸
class LoginPage(object):
    def __init__(self, master=None):
        # master 画板对象,往画板上作画
        self.root = master  # 定义内部变量root
        self.root.geometry('%dx%d' % (400, 280))  # 设置窗口大小
        root.title('登陆页面')
        # 定义可以在页面更新数据的变量 普通字符串改变之后无法及时在页面中刷新
        self.username = tk.StringVar()
        self.passWord = tk.StringVar()

        # 画 内容 需要画在纸上面
        # 创建新的 布局控件 找一张新的纸作画
        self.page = tk.Frame(self.root)  # 创建Frame
        # 将控件布局到 root 对象 (GUI 程序对象)
        self.page.pack()

        self.create_page()

    def create_page(self):
        """
            使用表格布局绘制内容

        """
        #
        # tk.Label 文本框 显示文字内容
        # stick 控件对象方向 tk.W 西方位
        # pady padding y 上下的宽度
        # row 行 表格布局
        tk.Label(self.page).grid(row=0, stick=tk.W)
        tk.Label(self.page, text='账户: ').grid(row=1, stick=tk.W, pady=10)
        # tk.Label 输入框 显示输入内容
        # 输入框的文字等内容需要更新
        tk.Entry(self.page, textvariable=self.username).grid(row=1, column=1, stick=tk.E)
        tk.Label(self.page, text='密码: ').grid(row=2, stick=tk.W, pady=10)
        tk.Entry(self.page, textvariable=self.password, show='*').grid(row=2, column=1, stick=tk.E)
        tk.Button(self.page, text='登陆', command=self.login_check).grid(row=3, stick=tk.W, pady=10)
        tk.Button(self.page, text='注册', command=self.page.quit).grid(row=3, column=1, stick=tk.E)

    def login_check(self):
        """登录检测"""
        name = self.username.get()
        secret = self.password.get()
        if name == 'admin' and secret == '123456':
            self.page.destroy()
            MainPage(self.root)
        else:
            tkinter.messagebox.showinfo(title='错误', message='账号或密码错误!')


if __name__ == '__main__':
    # root 对象 画板
    root = tk.Tk()
    # LoginPage 画纸
    LoginPage(root)
    root.mainloop()

主程序:

import tkinter as tk
from view import *  # 菜单栏对应的各个子页面


class MainPage(object):
    def __init__(self, master=None):
        self.root = master  # 定义内部变量root
        self.root.geometry('%dx%d' % (600, 400))  # 设置窗口大小

        self.create_page()

    def create_page(self):
        menubar = tk.Menu(self.root)
        # menubar.add_command(label='录入')
        # menubar.add_command(label='查询')
        # menubar.add_command(label='删除')
        # menubar.add_command(label='修改')
        # menubar.add_command(label='关于')

        self.input_page = InputFrame(self.root)  # 创建不同 Frame
        self.query_page = QueryFrame(self.root)
        self.delete_page = DeleteFrame(self.root)
        self.change_page = ChangeFrame(self.root)
        self.about_page = AboutFrame(self.root)
        self.input_page.pack()  # 默认显示数据录入界面

        # 控件只是显示,如果需要实现切换的逻辑需要用代码实现
        menubar.add_command(label='录入', command=self.input_data)
        menubar.add_command(label='查询', command=self.query_data)
        menubar.add_command(label='删除', command=self.delete_data)
        menubar.add_command(label='修改', command=self.change_data)
        menubar.add_command(label='关于', command=self.about_disc)
        self.root['menu'] = menubar  # 设置菜单栏

    def input_data(self):
        self.input_page.pack()
        self.query_page.pack_forget()
        self.delete_page.pack_forget()
        self.change_page.pack_forget()
        self.about_page.pack_forget()

    def query_data(self):
        self.input_page.pack_forget()
        self.query_page.pack()
        self.delete_page.pack_forget()
        self.change_page.pack_forget()
        self.about_page.pack_forget()

    def delete_data(self):
        self.input_page.pack_forget()
        self.query_page.pack_forget()
        self.delete_page.pack()
        self.change_page.pack_forget()
        self.about_page.pack_forget()

    def change_data(self):
        self.input_page.pack_forget()
        self.query_page.pack_forget()
        self.delete_page.pack_forget()
        self.change_page.pack()
        self.about_page.pack_forget()

    def about_disc(self):
        self.input_page.pack_forget()
        self.query_page.pack_forget()
        self.delete_page.pack_forget()
        self.change_page.pack_forget()
        self.about_page.pack()

    def __del__(self):
        db.save_data()


if __name__ == '__main__':
    root = tk.Tk()
    MainPage(root)
    root.mainloop()

3)效果展示

登陆页面截图——

​管理系统界面——

录入信息查询截图——

以上就是Python实现学生信息管理系统的示例代码的详细内容,更多关于Python学生信息管理系统的资料请关注编程网其它相关文章!

--结束END--

本文标题: Python实现学生信息管理系统的示例代码

本文链接: https://www.lsjlt.com/news/196120.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python实现学生信息管理系统的示例代码
    目录前言正文一、新手小白的福利——零基础学生信息管理系统二、GUI界面化版本——Tkinter学生信息管理系统前言 夏天是用来告别的季...
    99+
    2023-02-15
    Python实现学生信息管理系统 Python学生信息管理系统 Python信息管理系统
  • python代码实现学生信息管理系统
    本文实例为大家分享了python实现学生信息管理系统的具体代码,含代码注释、增删改查、排序、统计显示学生信息,供大家参考,具体内容如下 运行如下: 具体代码如下: # _*_ co...
    99+
    2022-11-10
  • python学生信息管理系统实现代码
    python实现学生信息管理系统,供大家参考,具体内容如下 #!/usr/bin/env python # -*- coding:utf-8 -*- import re impo...
    99+
    2022-11-12
  • C++代码实现学生信息管理系统
    本文实例为大家分享了C++实现学生信息管理系统的具体代码,供大家参考,具体内容如下 编译环境: Microsoft Visual Studio 2019 3个头文件: Fileope...
    99+
    2022-11-13
  • Python实现GUI学生管理系统的示例代码
    目录序 言代码解析一、登录页面二、主页面显示三 、页面显示四、查询数据五、删除数据六、修改数据七、关于部分八、数据保存,保存信息序 言 哈喽兄弟们,好久不见!最近实在太忙了,所以又双...
    99+
    2022-11-13
  • 学生信息管理系统 python实现(含全部代码)
    学生信息管理系统笔记python 一、需求分析 应具备的功能: 添加学生信息及成绩信息将学生信息保存在文件中修改和删除学生信息查询学生信息根据学生成绩进行排序统计学生总分 二、系统设计 学生信息管理系...
    99+
    2023-09-09
    python pycharm 开发语言
  • python tkinter实现学生信息管理系统
    本文实例为大家分享了python tkinter实现学生信息管理系统的具体代码,供大家参考,具体内容如下 初学python,代码写的比较繁杂,系统功能还有完善的空间 系统使用了mys...
    99+
    2022-11-13
  • 用python实现学生信息管理系统
    用Python实现学生信息管理系统,供大家参考,具体内容如下 系统功能有: 1.录入,查找,删除,修改学生信息2.学生成绩排名3.显示全部学生信息 代码如下: filename = ...
    99+
    2022-11-11
  • python怎么实现学生信息管理系统
    本文将为大家详细介绍“python怎么实现学生信息管理系统”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“python怎么实现学生信息管理系统”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下...
    99+
    2023-06-06
  • python实现简易的学生信息管理系统
    目录一、系统功能二、系统开发环境三、实现代码四、项目打包并生成.exe可执行文件本文实例为大家分享了python实现简易学生信息管理系统的具体代码,供大家参考,具体内容如下 一、系统...
    99+
    2022-11-11
  • Python实现简单的学生信息管理系统
    本文实例为大家分享了Python实现学生信息管理系统的具体代码,供大家参考,具体内容如下 要求描述: 学生的信息包括:学号,姓名,年龄,性别,出生日期,地址,电话,E-mail等等。...
    99+
    2022-11-13
  • 怎么使用C++代码实现学生信息管理系统
    今天小编给大家分享一下怎么使用C++代码实现学生信息管理系统的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。编译环境:Micr...
    99+
    2023-06-30
  • Python之学生信息管理系统
    目录 一、基础界面实现  1、主函数 2、保持循环,获取用户需求  二、函数实现模块功能 1、添加学生信息 2、删除学生信息  3、修改学生信息 4、查找全部学生信息 5、退出系统 三、整合代码 1、 完整代码 2、完整实现过程 实现 ...
    99+
    2023-08-31
    python
  • python tkinter怎么实现学生信息管理系统
    这篇文章给大家分享的是有关python tkinter怎么实现学生信息管理系统的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下初学python,代码写的比较繁杂,系统功能还有完善的空间系统使用...
    99+
    2023-06-29
  • 基于php+MySql实现学生信息管理系统实例
    php大作页,使用php+mysql技术,实现了基本的分页,信息查询,修改,增加,删除操作 有以下几个基本页面 登录页面 首页 修改学生基本信息 修改学生学籍信息 修改学生成绩信息 增加学生信息 ...
    99+
    2022-05-21
    php学生信息管理系统 php MySql 信息管理系统
  • Python学生管理系统示例
    import os stus = [] # 学生信息列表(每个学生的信息以字段存储) def add_stu():sid = input('输入学生学号:')sname = input('输入学生姓名:')sage = input('输入...
    99+
    2023-01-31
    管理系统 示例 学生
  • JavaWeb实现学生信息管理系统(1)
    这是一个很简单的学生信息管理系统,会用到很多小知识,比如说: 数据库连接池 DBUtils JSP、EL、JSTL MVC设计模式 JavaWeb...
    99+
    2022-11-12
  • JavaWeb实现学生信息管理系统(2)
    本文接着上一篇,继续为大家分享了JavaWeb实现学生信息管理系统的第二篇,供大家参考,具体内容如下 今日任务:实现学生管理系统的查找和添加功能! 一、查询学生信息 1. index...
    99+
    2022-11-12
  • JavaWeb实现学生信息管理系统(3)
    本文接着第二篇,继续为大家分享了JavaWeb实现学生信息管理系统,供大家参考,具体内容如下 今日任务:实现学生管理系统的删除、更新、修改和模糊查询功能! 一、删除学生信息 点击超链...
    99+
    2022-11-12
  • JavaScript+HTML实现学生信息管理系统
    目录一、前言二、效果图三、代码四、学生信息管理系统主界面一、前言 用数组来存储所有学生对象的信息,实现了双向更新,初始时(数组内的对象信息“填充界面”),后面的界面操作可以更新数组内...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作