用python做学生信息管理系统期末作业

大家好,本文将围绕用python做学生信息管理系统期末作业展开说明,python做学生信息管理系统总体设计是一个很多人都想弄明白的事情,想搞清楚用python做学生信息管理系统网页需要先了解以下几个事情。

一、主函数

主函数主要是调用菜单函数menu(),且让用户进行功能的选择,根据用户的输入调用相应的函数,如果选择退出系统,直接退出函数,运行结束。在python中并不存在真的主函数,我们用下面语句实现python自学很难吗

if __name__ == '__main__':
    main()

menu()较简单,直接使用print()

def menu():
    print("+++++++++++++++++++++++学生信息管理系统+++++++++++++++++++++++++++++++")
    print("---------------------------功能菜单---------------------------------")
    print("                        1.录入学生信息                                ")
    print("                        2.查找学生信息")
    print("                        3.删除学生信息")
    print("                        4.修改学生信息")
    print("                        5.排序")
    print("                        6.统计学生人数")
    print("                        7.显示所有学生信息")
    print("                        0.退出系统")
    print("--------------------------------------------------------------------")
#菜单函数

功能展示

功能菜单

二、录入学生信息模块

这一部分主要是输入以及保存至文件中,可以用列表的方式记录信息,在写入文件。

def save(list):
    try:
        stu_txt=open(filename,'a',encoding='utf-8')
    except:
        stu_txt=open(filename,'w',encoding='utf-8')
    for item in list:
        stu_txt.write(str(item)+'\n')
    stu_txt.close()
#保存文件函数

功能展示

在这里插入图片描述

三、查找学生信息模块

查找模块要做的首先就是判断文件是否存在,这里用了os模块,os模块是Python中的一个内置模块,用于提供与操作系统交互的功能。它包含了许多有用的函数,可以用于管理文件和目录、获取系统信息、操作进程等等。查询就是对比字符串了,很容易实现。注意交互逻辑即可。
判断文件是否存在:

if os.path.exists(filename)#判断文件是否存在

读文件数据,存在列表中:

with open(filename,mode='r',encoding='utf-8') as rfile:
     student=rfile.readlines()

功能展示

在这里插入图片描述

四、删除学生信息模块

同查找模块,首先需要判断文件是否存在,其实用show()函数展示学生信息,便于用户查看需要删除的学生。删除的思路是,读文件,将文件信息保存在列表或字典中,查询要删除的学生,将要删除的学生信息不在写入到文件中,这样就实现了文件中某一学生信息的删除。其中定义一个flag判断学生信息是否删除。

flag=False
if flag:
   print(f'id为{student_id}的学生信息已被删除')
else:
   print(f'没有找到id为{student_id}的学生信息')

功能展示

在这里插入图片描述

五、修改学生信息

其实操作基本同上,查询到要修改i的学生后,用户输入要修改的信息,写入文件即可。

#读文件
if os.path.exists(filename):
   with open(filename,mode='r',encoding='utf-8') as file:
        student_old=file.readlines()
#写文件
wfile.write(str(d)+'\n')

功能展示

在这里插入图片描述

五、排序功能

python提供了现成的排序函数sort(),不需要我们在像C语言等自己写冒泡排序、插入排序、快熟排序等等。减少代码量。我们需要写的就是,按照什么成绩、按照什么顺序进行排序。这里用了lambda函数。

student_list.sort(key=lambda x:int(x['english']),reverse=True)
#以英语成绩为例

功能展示

在这里插入图片描述

六、统计人数

此模块就是找列表长度,可以使用len(),也可以循环遍历。

功能展示

在这里插入图片描述

7、显示所有学生信息

同上,读文件到列表中,输出就行。输出格式用了format格式化函数,让界面更美观。

format_title='{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^8}\t{:^8}'
    print(format_title.format('id','姓名','英语成绩','python成绩','java成绩','总成绩'))

功能展示

在这里插入图片描述

8、总结

基础学习实战,让语言更加熟练,但在写的过程中也会遇到很多问题,需要多复习,python语言和C语言有相似的地方,但有一些不同的交互逻辑,在写的过程中,很容易出现循环的对应问题,比如本要写在循环外的语句却在循环内执行了,特别是循环嵌套时容易出现,找错时应多注意是不是此出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值