1
学生管理系统(2)
作者:㋛
- 2022 年 5 月 13 日
本文字数:1863 字
阅读完需:约 6 分钟
简介
上篇文章详细的介绍了该管理系统所具备的结构和功能,并且介绍了如何实现录入学生信息功能,本文将介绍如何删除学生信息等具体的模块功能的实现。
主函数的介绍
在介绍各模块功能之前首先对于主函数的描写进行初级的介绍:
def main(): # 主函数
while True: # 一直呈现菜单界面
menm()
choice = int(input('请选择:')) # 进行类型转换
if choice in [0, 1, 2, 3, 4, 5, 6, 7]:
if choice == 0:
answer = input('您确定要退出系统吗?y/n')
if answer == 'y' or answer == 'Y':
print('谢谢您的使用!!!')
break # 退出系统
else:
continue
elif choice == 1:
insert() # 录入学生信息
elif choice == 2:
search() # 查找学生信息
elif choice == 3:
delect() # 删除学生信息
elif choice == 4:
modify() # 修改学生信息
elif choice == 5:
sort() # 排序
elif choice == 6:
total() # 统计学生总人数
elif choice == 7:
show() # 显示所有学生信息
复制代码
定义一个菜单展示界面:
def menm(): # 定义一个函数菜单
print('=================学生信息管理系统============================')
print('------------------功能菜单----------------------------------')
print('\t\t\t\t\t\t\t1.录入学生信息')
print('\t\t\t\t\t\t\t2.查找学生信息')
print('\t\t\t\t\t\t\t3.删除学生信息')
print('\t\t\t\t\t\t\t4.修改学生信息')
print('\t\t\t\t\t\t\t5.排序')
print('\t\t\t\t\t\t\t6.统计学生总人数')
print('\t\t\t\t\t\t\t7.显示所有学生信息')
print('\t\t\t\t\t\t\t0.退出')
print('------------------------------------------------------------')
复制代码
通过主函数时刻调用菜单,了解该程序主要的实现过程以及实现步骤。并且明确该管理系统具有那些模块及功能。
删除学生信息
从控制台录入学生 id,到磁盘文件中找到对应的学生信息,并将其删除。
编写主函数中调用的删除学生信息的函数 delete()
def delect(): # 删除学生信息
while True:
student_id = input('请输入要删除学生的ID:')
if student_id != '':
if os.path.exists(filename): # 判断磁盘文件是否存在
with open(filename, 'r', encoding='utf-8') as file: # 文件存在就读取
student_old = file.readlines() # 读取所有的数据,将数据放入列表当中
else:
student_old = [] # 文件不存在就将文件判空
flag = False # 标记是否删除,默认是不删除
if student_old: # 判断列表
with open(filename, 'w', encoding='utf-8') as wfile: # 如果有数据,用只写的方式打开文件
d = {}
for item in student_old:
d = dict(eval(item)) # 将字符串转成字典
if d['id'] != student_id:
wfile.write(str(d) + '\n') # 先将字符串写入文件当中去
else:
flag = True # 表示已经删除
if flag:
print(f'id为{student_id}的学生已经被删除') # f表示格式化字符串
else:
print(f'没有找到ID为{student_id}的学生信息')
else: # 磁盘没有数据
print('无学生信息')
break
show() # 删除之后重新显示所有学生的信息
answer = input('是否继续删除呢?y/n')
if answer == 'y' or answer == 'Y':
continue
else:
break
复制代码
代码中调用了 show()函数用来显示学生信息,该函数的功能将在后面完成。目前用来了解,show 函数是用来实现显示学生信息的功能。
乘风破浪会有时,直挂云帆济沧海
东西不多,希望大家可以共勉之。喜欢的话,可以给作者一个大大的赞,鼓励一下吗!!!
划线
评论
复制
发布于: 刚刚阅读数: 2
㋛
关注
还未添加个人签名 2022.04.24 加入
还未添加个人简介
评论