2021-01-10

一、功能程序

1.功能概述

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

2.思维导图

在这里插入图片描述

二、学生实体(Entity)

1.思维导图

在这里插入图片描述

2.关系模式

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

  • 行–记录–元组
  • 列–字段–属性

3.学生表

学号姓名性别年龄班级专业系部电话
2020001李晓红192020级软件4班软件技术信息工程学院15945456780
2020002王晓刚182020级软件4班软件技术信息工程学院13890904567
2020003唐雨涵192020级软件4班软件技术信息工程学院18878789023
2020101张三疯182020级大数据1班大数据技术与运用信息工程学院15945456780
  • 这学期,我们还没有学习MySQL,所以我们将学生信息保存到文本文件里,用空格来隔开每个字段。
    在这里插入图片描述

三、读取学生文件

  • 文件结构是由若干个列构成,一行一行地读取出来的字符串,通过空格拆分成一个列表,所有行读取出来之后就自然构成列表的列表,即二维列表。
  • 演示用二维列表保存多个学生信息。
  • 创建两个列表:student1和student2然后添加到students的列表里
    在这里插入图片描述

1.直接输出students列表

在这里插入图片描述

2.格式输出students

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

3.切换工作目录

在这里插入图片描述

  • 读取学生文件(注意:保存txt格式文件时,文件格式默认编码为utf-8,此格式编码在读取是会报错的,需在保存txt文件时将格式改为ANIS),之后才能保存到二维列表并输出
    在这里插入图片描述
    在这里插入图片描述

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

1.增加学生记录

目前students里有两个元素(学生)
在这里插入图片描述

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

2.查询学生记录

(1)按学号查询

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

  • 这种方法有点瑕疵:当搜索正确时,会有学生信息出现;但搜索有误时,连提示错误信息都没有。
  • 所以按理搜索不当时我们应该给用户添上一个“查无此人!”
  • 新方法如下:
    在这里插入图片描述

(2)按姓名查询

在这里插入图片描述

3.修改学生记录

  • 修改学号为"2020003"的学生记录,将年龄改为“18”,电话改为“15834345670”
    在这里插入图片描述

4、删除学生记录

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

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

1、将students写入学生.txt

在这里插入图片描述

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

在这里插入图片描述

六、构建学生信息管理多级菜单系统

(一)构建多级菜单系统

  • 编写程序 - 学生信息管理.py
    在这里插入图片描述

  • 运行程序,查看效果
    在这里插入图片描述

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

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

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

  • 启动程序,查看效果
    在这里插入图片描述
    在这里插入图片描述

2、编写增加学生记录功能

  • 编写add_student()函数代码
    在这里插入图片描述

  • 启动程序,查看效果

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值