一.程序功能(Function)
1、功能概述
利用Python完成一个学生信息的增删改查程序,主要涉及知识点:程序控制结构(做多级菜单),文件读写操作(学生信息要保存到读写的文件里面)
涉及知识点:程序控制结构(多级菜单)文件读写
2、思维导图
二、学生实体(Entity)
1、思维导图
2、关系模式
学生(学号, 姓名, 性别, 年龄, 班级, 专业, 系部, 电话)
3学生表
行——记录——元组
列——字段——属性
学号 | 姓名 | 性别 | 年龄 | 班级 | 专业 | 系部 | 电话 |
---|---|---|---|---|---|---|---|
2020001 | 李晓红 | 女 | 19 | 2020级软件四班 | 软件技术 | 信息工程学院 | 135683292993 |
2020002 | 王晓刚 | 男 | 19 | 2020级软件四班 | 软件技术 | 信息工程学院 | 134582292993 |
2020003 | 刘就 | 女 | 19 | 2020级软件四班 | 软件技术 | 信息工程学院 | 185469782555 |
2020004 | 张三丰 | 男 | 19 | 2020级软件四班 | 软件技术 | 信息工程学院 | 158445256248 |
这学期,我们还没有学习MySQL所以我们将学生信息保存到文件里面去,用空格隔开每个字段。
标题三.读取学生文件
文件结构是由若干行若干列构成,每一行读取出来的字符串通过空格拆分成学生列表,所有行读取出来之后就自动构成列表的列表,即二维列表。
1,演示用二维列表保存多个学生信息
创建4个列表:student1,student2,student3,student4
直接输出student列表
格式输出student
2读取学生文件数据,保存到二维列表里面
查看学生表文件位置
大家可以发现一个问题,每一行尾巴后面有一个“|n",需要去删掉才好
格式化输出students列表
len(students) - 得到二维列表的行数
len(students[i]) - 得到二维列表第(i-1)行的元素个数,即列数
四.对学生二维列表进行增删查改操作
1.增加学生记录
目前students里面有4个元素(学生)
添加一个新元素(学生)
(1).按学号查询学生记录
这个程序有个缺陷,如果没有查询到,就没有任何输出信息,按理应该给用户一个提示:“查无此人!”
(2).按姓名查询学生记录
3.修改学生记录
修改学号为"2020003"的学生记录,将年龄改为“18”,电话改为“158343456709”
修改学号为“2020007”的学生记录,将年龄改为“20”,电话改为“139676789004”
4.删除学生记录
删除学号为“2020007”的学生记录
五.将学生二维列表写入学生文件
1、将students写入学生表.txt
2、查看更新之后的学生表.txt
六、构建学生信息管理多级菜单系统
(一)构建多级菜单系统
编写程序 - 学生信息管理.py
启动程序,查看效果
(二)实现学生信息管理功能模块
1、编写查询全部学生记录功能
编写get_all_students()、display_all_students()函数
启动程序,查看效果
2、编写增加学生记录功能
编写add_student()函数代码
启动程序,查看效果
查看添加了新记录的学生表.txt文件
3、编写修改学生记录功能
编写modify_student()函数代码
运行程序,查看结果
4.编写删除学生记录功能
编写display_delete_student()函数代码
启动程序,查看效果