python综合练习:学生管理系统

本文介绍了使用Python实现一个学生信息管理系统的过程,包括增删改查功能,多级菜单系统,以及文件读写操作。通过二维列表存储学生信息,并提供了按学号和姓名查询的实现,最后给出了实训任务代码。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

<

一、程序功能(Function)

1、功能概述

利用python完成完成一个学生信息的增删改查程序,主要涉及知识点:程序控制结构(做多级菜单)、文件读写操作(学生信息要保存到磁盘上的文件里)。

2、思维导图

在这里插入图片描述

二、 学生实体(Entity)

在这里插入图片描述

2、关系模式

学生(学号,姓名,性别,年龄,班级,专业,系部,电话)

3、学生表记录

行——记录——元组

学号 姓名 性别 年龄 班级 专业 系部 电话
2020001 陈天 19 2020级软件技术4班 软件技术 信息工程学院 111111111
2020002 李潇 19 2020级软件技术4班 软件技术 信息工程学院 111111111
2020003 陈天 19 2020级软件技术4班 软件技术 信息工程学院 111111111
2020004 陈天 19 2020级软件技术4班 软件技术 信息工程学院 111111111
2020005 陈天 19 2020级软件技术4班 软件技术 信息工程学院 111111111
2020006 陈天 19 2020级软件技术4班 软件技术 信息工程学院 111111111

这一学期我们没有学习MySQL,所以我们将学生信息保存到文本文件里面,用空格隔开每个字段
在这里插入图片描述

三、读取学生文件

文件结构是由若干行若干列构成,一行一列地读取,每一行读取出来的字符串,通过空格拆分成一个列表,所有行读取出来之后就自然构成列表,即二维列表。

1、演示用二维列表保存多个学生信息创建六个列表:

student1、student2、student3、student4、student5和student6,然后添加到student是列表里在这里插入图片描述

直接输出student列表在这里插入图片描述
格式输出students
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查看学生文件位置在这里插入图片描述
切换工作目录
在这里插入图片描述
读取学生文件,保存到二维列表并输出在这里插入图片描述
大家可以发现一个问题,每一行尾巴有个“\n”,需要去除掉才好。
在这里插入图片描述
格式化输出students列表在这里插入图片描述
在这里插入图片描述
len(students) - 得到二维列表的行数
len(students[i]) - 得到二维列表第(i-1)行的元素个数,即列数

四、对学生二维列表进行增删改查操作

1、增加学生记录

目前students里有六个元素(学生)
在这里插入图片描述
添加一个新元素(学生)在这里插入图片描述
输出更新之后的students二维列表在这里插入图片描述

2、查询学生记录

(1)按学号查询学生记录

在这里插入图片描述
这个程序有个缺陷,如果没有查询到,就没有任何输出信息,按理应该给用户一个提示:“查无此人!”
在这里插入图片描述
在这里插入图片描述

(2)按姓名查询学生记录

在这里插入图片描述
在这里插入图片描述

3、修改学生记录

修改学号为"2020007"的学生记录,将年龄改为“20”,电话改为“110112119”
在这里插入图片描述
修改学号为“2020006”的学生记录,将年龄改为“16”,电话改为“119110120”
在这里插入图片描述

4、删除学生记录

删除学号为“2020006”的学生记录
在这里插入图片描述

在这里插入图片描述
删除学号为“2020008”的学生记录在这里插入图片描述

五、将学生二维列表写入学生文件

1、将students写入学生.txt

在这里插入图片描述

2、查看更新之后的学生.txt

在这里插入图片描述

六、构建多级菜单系统

(一)构建多级菜单系统

编写程序 - 学生信息管理.py在这里插入图片描述
在这里插入图片描述
运行程序,查看效果在这里插入图片描述
在这里插入图片描述

(二)实现学生信息管理功能模块

1、编写查询全部学生记录功能

编写get_all_students()、display_all_students()函数
在这里插入图片描述
在这里插入图片描述

  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值