Python制作基础学生信息管理系统

目录
  •  一.前言
  • 二.开发环境:
  • 三.涉及知识点
  • 四.接下来我们开始敲代码
    • 第一步:制作学生信息管理系统的界面
    • 第二步:新建学生信息
    • 第三步:显示全部学生信息
    • 第四步:查询学生信息
    • 第五步:修改学生信息
    • 第六步: 删除学生信息
  • 五、最后代码

 一.前言

学生信息管理系统,相信大家或多或少都有做过

最近看很多学生作业都是制作一个学生信息管理系统

于是,今天带大家做一个简单的学生信息管理系统

二.开发环境:

我用到的开发环境

  • Python 3.8
  • Pycharm 2021.2

三.涉及知识点

  • Python基础语法
  • 基本的数据类型与结构
  • 基本的逻辑控制语句
  • 实战小项目

四.接下来我们开始敲代码

我们一步步来完成学生信息管理系统

第一步:制作学生信息管理系统的界面

  1. 程序启动,显示信息管理系统欢迎界面,并显示功能菜单 (print)
  2. 用户用数字选择不同的功能 (input)
  3. 根据功能选择,执行不同的功能 (if 判断 多分支选择)
  4. 需要记录学生的 姓名、语文成绩、数学成绩、英语成绩 、总分 (input, 数据容器存储输入的学生信息)
  5. 如果查询到指定的学生信息,用户可以选择 修改 或者 删除 信息 (多分支选择里面的逻辑)
  6. 进入或退出时加载或保存数据 (文件操作)
"""
str_info = """**************************************************
欢迎使用【学生信息管理系统】V1.0
请选择你想要进行的操作
1. 新建学生信息
2. 显示全部信息
3. 查询学生信息
4. 删除学生信息
5. 修改学生信息

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

while True:
    # 1. 程序启动,显示信息管理系统欢迎界面,并显示功能菜单 (print)
    print(str_info)
    # 2.用户用数字选择不同的功能(input)
    action = input('请选择你要进行的操作(输入数字):')
    if action == '1':
        print('1. 新建学生信息')
    elif action == '2':
        print('2. 显示全部信息')
    elif action == '3':
        print('3. 查询学生信息')
    elif action == '4':
        print('4. 删除学生信息')
    elif action == '5':
        print('5. 修改学生信息')
    elif action == '0':
        print('0. 退出系统')
        break
    else:
        print('请输入正确的选项!')

效果:

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

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

第二步:新建学生信息

需要记录学生的 姓名、语文成绩、数学成绩、英语成绩 、总分 (input, 数据容器存储输入的学生信息)

name = input('请输入学生的姓名:')
chinese = int(input('请输入学生的语文成绩:'))
math = int(input('请输入学生的数学成绩:'))
english = int(input('请输入学生的英语成绩:'))

total = chinese + math + english

# 用什么数据容器接受比较好?  存储信息, 取值  采用字典
students = [
    {'name': name, 'chinese': chinese, 'math': math, 'english': english, 'total': total}
]

print(students)

第三步:显示全部学生信息

students = [
    {'name': '正心', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '张三', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '李四', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '王五', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
]

print('姓名\t语文\t数学\t英语\t总分')

for stu in students:
    # print(stu)
    print(f'{stu["name"]}\t{stu["chinese"]}\t\t{stu["math"]}\t\t{stu["english"]}\t\t{stu["total"]}')

第四步:查询学生信息

students = [
    {'name': '正心', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '张三', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '李四', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '王五', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
]

# 5. 如果查询到指定的学生信息,用户可以选择 修改 或者 删除 信息 (多分支选择里面的逻辑)

name = input('请输入你要查询学生的姓名:')

# 先遍历所有学生
for stu in students:
    # 如果满足条件, 就是查询到了
    if name == stu['name']:
        print('姓名\t语文\t数学\t英语\t总分')
        print(f'{stu["name"]}\t{stu["chinese"]}\t\t{stu["math"]}\t\t{stu["english"]}\t\t{stu["total"]}')
        # 一旦查询到了就停止查询
        break

else:
    # 没找到
    print('该学生不存在, 请检查名字是否输入正确!')

第五步:修改学生信息

import pprint

students = [
    {'name': '正心', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '张三', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '李四', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '王五', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
]

# 5. 如果查询到指定的学生信息,用户可以选择 修改 或者 删除 信息 (多分支选择里面的逻辑)

name = input('请输入你要修改学生的姓名:')

# 先遍历所有学生
for stu in students:
    # 如果满足条件, 就是查询到了, 找到了这个学生
    # 找到了需要修改的学生
    if name == stu['name']:
        # 不想修改, 直接回车
        print('(如果不想修改,直接回车!)')
        name = input('请重新输入学生的姓名:')
        chinese = input('请重新输入学生的语文成绩:')
        math = input('请重新输入学生的数学成绩:')
        english = input('请重新输入学生的英语成绩:')
        # total = chinese + math + english

        # 用户输入了数据才修改
        if name:
            stu['name'] = name
        if chinese:
            stu['chinese'] = int(chinese)
        if math:
            stu['math'] = int(math)
        if english:
            stu['english'] = int(english)

        stu['total'] = stu['chinese'] + stu['math'] + stu['english']

        break

else:
    # 没找到
    print('该学生不存在, 请检查名字是否输入正确!')

pprint.pprint(students)

第六步: 删除学生信息

import pprint

students = [
    {'name': '正心', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '张三', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '李四', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
    {'name': '王五', 'chinese': 59, 'math': 59, 'english': 59, 'total': 177},
]

# 5. 如果查询到指定的学生信息,用户可以选择 修改 或者 删除 信息 (多分支选择里面的逻辑)

name = input('请输入你要删除学生的姓名:')

# 先遍历所有学生
for stu in students:
    # 找到学生
    if name == stu['name']:
        # 删除学生
        students.remove(stu)
        break

else:
    # 没找到
    print('该学生不存在, 请检查名字是否输入正确!')

pprint.pprint(students)

然后把他们拼接起来,就完成了我们简单的一个学生管理系统!

五、最后代码

import json

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

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

# 读取文件
with open('students.json', mode='r', encoding='utf-8') as f:
    students_str = f.read()

students = json.loads(students_str)

while True:
    # 1. 程序启动,显示信息管理系统欢迎界面,并显示功能菜单 (print)
    print(str_info)
    # 2.用户用数字选择不同的功能(input)
    action = input('请选择你要进行的操作(输入数字):')
    if action == '1':
        print('1. 新建学生信息')
        name = input('请输入学生的姓名:')
        chinese = int(input('请输入学生的语文成绩:'))
        math = int(input('请输入学生的数学成绩:'))
        english = int(input('请输入学生的英语成绩:'))

        total = chinese + math + english
        # 新的学生
        stu = {'name': name, 'chinese': chinese, 'math': math, 'english': english, 'total': total}
        students.append(stu)

    elif action == '2':
        print('2. 显示全部信息')
        print('姓名\t语文\t数学\t英语\t总分')

        for stu in students:
            print(f'{stu["name"]}\t{stu["chinese"]}\t\t{stu["math"]}\t\t{stu["english"]}\t\t{stu["total"]}')

    elif action == '3':
        print('3. 查询学生信息')
        name = input('请输入你要查询学生的姓名:')

        # 先遍历所有学生
        for stu in students:
            # 如果满足条件, 就是查询到了
            if name == stu['name']:
                print('姓名\t语文\t数学\t英语\t总分')
                print(f'{stu["name"]}\t{stu["chinese"]}\t\t{stu["math"]}\t\t{stu["english"]}\t\t{stu["total"]}')
                # 一旦查询到了就停止查询
                break

        else:
            # 没找到
            print('该学生不存在, 请检查名字是否输入正确!')

    elif action == '4':
        print('4. 删除学生信息')
        name = input('请输入你要删除学生的姓名:')

        # 先遍历所有学生
        for stu in students:
            # 找到学生
            if name == stu['name']:
                # 删除学生
                students.remove(stu)
                break

        else:
            # 没找到
            print('该学生不存在, 请检查名字是否输入正确!')
    elif action == '5':
        print('5. 修改学生信息')
        name = input('请输入你要修改学生的姓名:')

        # 先遍历所有学生
        for stu in students:
            # 如果满足条件, 就是查询到了, 找到了这个学生
            # 找到了需要修改的学生
            if name == stu['name']:
                # 不想修改, 直接回车
                print('(如果不想修改,直接回车!)')
                name = input('请重新输入学生的姓名:')
                chinese = input('请重新输入学生的语文成绩:')
                math = input('请重新输入学生的数学成绩:')
                english = input('请重新输入学生的英语成绩:')
                # total = chinese + math + english

                # 用户输入了数据才修改
                if name:
                    stu['name'] = name
                if chinese:
                    stu['chinese'] = int(chinese)
                if math:
                    stu['math'] = int(math)
                if english:
                    stu['english'] = int(english)

                stu['total'] = stu['chinese'] + stu['math'] + stu['english']
                break
        else:
            # 没找到
            print('该学生不存在, 请检查名字是否输入正确!')
    elif action == '0':
        print('0. 退出系统')
        with open('students.json', mode='w', encoding='utf-8') as f:
            # 把列表对象转化成字符串  ascii 编码
            students_str = json.dumps(students, ensure_ascii=False)
            f.write(students_str)
            print(students_str)
        break
    else:
        print('请输入正确的选项!')

到此这篇关于Python制作基础学生信息管理系统的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • python实现学生信息管理系统源码

    本文实例为大家分享了python实现学生信息管理系统的具体代码,供大家参考,具体内容如下 代码如下: Project.py文件内容: class Student(object): # 建立学生信息储存的列表(嵌套的方式) studentInformation = [] # 对学生对象的数据进行说明 studentShow = ["学号:", "姓名:", "年龄:"] # 录入学生 def addstudent(self): sno = inpu

  • Python开发毕设案例之桌面学生信息管理程序

    下半年毕业季,各种毕业设计纷涌而至,虽然学校教了Python,但是我相信各位肯定没有认真学,做作业就懵逼的那种~ 所以我都给大家准备好了!各种版本学生管理系统设计! 我这个人比较耿直,喜欢直接上代码,不知道你们喜不喜欢,反正我很喜欢

  • 使用python实现学生信息管理系统

    本文实例为大家分享了python实现学生信息管理系统的具体代码,供大家参考,具体内容如下 学生管理系统的开发步骤: 1.显示学生管理系统的功能菜单 2.接收用户输入的功能选项 3.判断用户输入的功能选项,并完成相关的操作 把功能代码抽取到函数的目的:提供功能代码的复用性,减少功能代码的冗余. # 学生列表,专门来负责管理每一个学生信息 student_list = [] # 显示学生管理系统菜单的功能函数 def show_menu(): print("=================== 学

  • python面向对象版学生信息管理系统

    本文实例为大家分享了python面向对象版的学生信息管理系统的具体代码,供大家参考,具体内容如下 功能: 1.能循环输入内容 2.展示功能 -1.新增名片 -2.显示全部 -3.查询名片 -0.退出系统 3.让用户输入希望执行的操作 例如输入1,2,3,0 4.新增列表 提示用户输入姓名, 输入电话 输入qq号 输入邮箱 提示新增名片成功. 5.显示全部 将所有的名片打印出来,格式如下: 姓名    电话       QQ               邮箱 zs       110    133

  • Python制作基础学生信息管理系统

    目录  一.前言 二.开发环境: 三.涉及知识点 四.接下来我们开始敲代码 第一步:制作学生信息管理系统的界面 第二步:新建学生信息 第三步:显示全部学生信息 第四步:查询学生信息 第五步:修改学生信息 第六步: 删除学生信息 五.最后代码  一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3.8 Pycharm 2021.2 三.涉及知识点 Pyt

  • Python实现GUI学生信息管理系统

    本文实例为大家分享了Python实现GUI学生信息管理系统的具体代码,供大家参考,具体内容如下 项目环境:  软件环境: OS:RedHat6.3                   Lib:Pygtk                   Language:Python                   Support tool:Glade3 项目简述: ①Glade3设计用户的登录窗口,功能主窗口 ②通过Gtk.Builder初始化,载入界面 ③在Mysql.py文件中实现Python操作数

  • python实现简单学生信息管理系统

    python简单的学生信息管理系统-文件版,供大家参考,具体内容如下 功能如下 主函数部分 增加学生信息 修改学生信息 删除学生信息 查询学生 显示所有学生的信息 将数据录入文件 读取文件数据 学习文件模块后,将之前做的学生信息管理系统添加文件模块. 功能如下 1.新增学生信息: 2.修改学生信息: 3.删除学生信息: 4.查询学生信息: 5.显示学生信息; 6.将数据录入文件: 7.读取文件数据: 8.退出系统. 主函数部分 这里定义一个列表L,用来存储学生信息. 增加学生信息 将学生信息保存

  • python tkinter实现学生信息管理系统

    本文实例为大家分享了python tkinter实现学生信息管理系统的具体代码,供大家参考,具体内容如下 初学python,代码写的比较繁杂,系统功能还有完善的空间 系统使用了mysql数据库,数据库:sch,用户名:root ,密码:123456,创建表的语句写在代码里面了 ​import tkinter import tkinter.messagebox import re import pymysql from tkinter import scrolledtext import os f

  • 基于Python实现简易学生信息管理系统

    目录 一.系统简介 二.步骤分析 三.需求实现 四.具体实现 4.1 添加学生信息的函数 4.2 删除学生信息的函数 4.3 修改学生信息的函数 4.4 查询学生信息的函数 4.5 显示所有学生信息 五.运行效果 六.完整代码 一.系统简介 实现一个学生信息的管理系统:主要功能有: 添加学生信息 删除学生信息 修改学生信息 查询学生信息 显示学生信息 退出当前系统 二.步骤分析 显示功能界面 用户输入功能序号 对不同序号的功能实现具体函数(3.1 定义函数.3.2 调用函数) 三.需求实现 显示

  • python实现简易学生信息管理系统

    本文实例为大家分享了python实现学生信息管理系统的具体代码,供大家参考,具体内容如下 简易学生信息管理系统主要功能有 1 录入学生信息 2 查找学生信息 3 删除学生信息 4 修改学生信息 5 排序 6 统计学生总人数 7 显示所有学生信息 0 退出系统 系统运行效果 主菜单的代码方法: # Author: dry # 开发时间:2019/9/11 # 开发工具:PyCharm import re # 导入正则表达式模块 import os # 导入操作系统模块 filename = "st

  • python代码实现学生信息管理系统

    本文实例为大家分享了python实现学生信息管理系统的具体代码,含代码注释.增删改查.排序.统计显示学生信息,供大家参考,具体内容如下 运行如下: 具体代码如下: # _*_ coding:utf-8   _*_ import re  # 导入正则表达式模块 import os  # 导入操作系统模块   filename = "students.txt"  # 定义保存学生信息的文件名   def menu():     print("-------------------

  • python学生信息管理系统(完整版)

    本文是基于上一篇(python项目:学生信息管理系统(初版) )进行了完善,并添加了新的功能. 主要包括有: 完善部分:输入错误:无数据查询等异常错误 新的功能:文件的操作:文件的读写,其中重点是对文本字符串的详细解析(关于整个解析拆解和重组详见代码,以及添加了注释) 学生信息管理系统(完整版) 学生信息管理项目,要求带操作界面,并完成每项操作: +----------------------+ | 1)添加学生信息 | | 2)显示所有学生的信息 | | 3)删除学生信息 | | 4)修改学生

  • python学生信息管理系统(初级版)

    本文为大家分享了python学生信息管理系统的初级实现代码,供大家参考,具体内容如下 学生信息管理项目,要求带操作界面,并完成每项操作: +----------------------+ | 1)添加学生信息 | | 2)显示所有学生的信息     | | 3)删除学生信息     | | 4)修改学生信息            | | 5)按学生成绩高-低显示学生信息         | | 6)按学生成绩低-高显示学生信息      | | 7)按学生年龄高-低显示学生信息   | | 8)

随机推荐