python做学生信息管理系统,python编辑学生信息系统
大家好!欢迎收看本期内容。今天我们将为大家带来一个关于Python编程的精彩分享。首先,请大家准备好笔记本和草稿纸,在接下来的几节中我们将逐步解析这一技术方案的具体实现细节。
首先让我们了解什么是Python控制台程序——学生信息管理系统?它是一种基于Python语言开发的学生管理软件系统,在命令行界面下运行并提供一系列功能模块以实现学生成绩查询、课程选修记录查询等功能。
接下来我们将深入探讨如何利用Python编写一个完整的学生管理系统,并通过图形界面技术(GUI)进行系统设计与实现。通过这一过程希望大家能够全面掌握Python编程在实际项目开发中的应用方法以及GUI开发的基本思路和技术手段。
今天的分享内容主要分为三个部分:第一部分介绍系统的功能模块设计;第二部分讲解具体的技术实现细节;第三部分展示系统的测试与优化方案等后续工作内容。希望大家能够跟上我们的节奏,在这期节目中收获满满的知识与实践经验!


文章目录
以下是按照要求对原文的同义改写
前言
在之前的课程中,我们已经完成了对Python基础语法的学习。包括输入输出操作、条件判断语句、循环结构等内容。今天的文章将带领大家完成一系列知识点的综合应用——搭建一个简单的学员管理系统。如果您尚未完全掌握这些知识点,请随时阅读我的Python学习指南Python流星雨特效代码:轻松打造璀璨星空。
基本思路
首先必须创建一个菜单以向用户提供可用功能选项包括新增数据项移除数据项更新现有数据搜索现有记录以及显示所有学员记录。随后根据用户的选定选项执行相应的操作为了确保程序不会仅执行一次任务就需要将整个操作流程设置为循环模式直到用户的退出指令被识别到则终止程序流程。
需求实现
1.实现菜单的功能
menu 函数用来实现菜单功能。
def menu():
print('---欢迎来到学员管理系统---')
print('-------0.退出系统-------')
print('-------1.添加学员-------')
print('-------2.删除学员-------')
print('-----3.修改学员信息------')
print('-----4.查找学员信息------')
print('----5.显示所有学员信息----')
print('-'*23)

2.提示用户输入需要进行的操作,并执行相关操作
整个操作需要放入 while 循环中
while True:
menu() # 显示菜单
option = int(input('请输入你要进行的操作:')) # 提示用户输入
if option == 0:
exit(0) # 这里退出程序比较简单,我们不必另外使用函数
elif option == 1:
add_info()
elif option == 2:
del_info()
elif option == 3:
modify_info()
elif option == 4:
search_info()
elif option == 5:
print_ifo()
在当前位置退出程序,在这里我们可以选择使用 exit(0) 这个函数来完成任务。此外,我们还可以选择通过 break 语句跳出循环并终止整个程序流程。接下来的任务包括增删改查以及显示信息等功能的工作内容,则需要我们额外利用函数来实现相应的功能。
3.具体函数功能的实现
增加学员信息
该系统将所有学员的信息存储为列表形式,并在每个数据被转换成字典时对应到特定的学员信息。
全局变量 info = [ ] 存储所有学员信息。
在我们的设计过程中,并没有出现两个学员具有相同姓名的情况。因此,在进行学员添加操作前,请先核查该学员的信息是否存在。如果已经存在,则跳过此次操作;反之,则会成功地将该学员加入到系统中。
def add_info():
'''
先提示用户输入信息,然后在已有信息中查找,如果已存在则结束函数,不存在则添加
:return:
'''
id_info = input('请输入学员学号:')
name_info = input('请输入学员姓名:')
tel_info = input('请输入学员电话号:')
dict_info = {} # 创建一个空字典用来存放单个学员信息
global info # 因为需要进行增加操作,所以操作对象是全局变量info
for i in info:
if i['name'] == name_info:
print('学员信息已存在,添加失败')
break
else: # 当for循环正常结束的时候,表明不存在该学员,正常添加信息
dict_info['id'] = id_info
dict_info['name'] = name_info
dict_info['tel'] = tel_info
info.append(dict_info)
print('添加成功')

为了查看是否添加成功,我们可以先来实现显示所有学员信息功能。
显示所有学员信息
显示所有学员信息比较简单,就是使用一个循环,然后打印。
def print_ifo():
for i in info:
print(f"学员学号:{i['id']}\t学员姓名:{i['name']}\t学员电话:{i['tel']}")
这里注意区别单引号和双引号的使用

删除学员信息
在确认要删除的学员信息是否存在时:如果该信息不存在,则退出该操作流程;反之,则执行删除操作。
def del_info():
'''如果要删除的学员信息不存在,则结束函数,如果存在则删除'''
name_info = input('请输入你要删除的学员信息的姓名')
global info
for i in info:
if i['name'] == name_info:
info.remove(i)
print('删除成功')
break # 当删除之后可以提前结束循环
else:
print('该学员不存在') # 当循环正常结束的时候,表明不存在要删除的学员的信息



修改学员信息
在修改前核查该学员的信息是否已存在。若不存在,则终止此操作;若有,则执行相应的修改
def modify_info():
name_info = input('请输入你要修改的学员信息的姓名:')
tel_info = input('请输入你要修改的学员的电话信息:')
global info
for i in info:
if i['name'] == name_info:
i['tel'] = tel_info
print('修改成功')
break
else:
print('你要修改的学员的信息不存在')

查询学员信息
当查询到的时候就输出该学员的信息,不存在则提示不存在。
def search_info():
name_info = input('请输入你要查找的学员信息的姓名:')
for i in info:
if i['name'] == name_info:
print(f"学员学号:{i['id']}\t学员姓名:{i['name']}\t学员电话:{i['tel']}")
break
else:
print("学员信息不存在")

整体代码展示
info = [] # 以列表的形式存储所有学员信息,每个学员信息以字典的形式存储
def menu():
print('---欢迎来到学员管理系统---')
print('-------0.退出系统-------')
print('-------1.添加学员-------')
print('-------2.删除学员-------')
print('-----3.修改学员信息------')
print('-----4.查找学员信息------')
print('----5.显示所有学员信息----')
print('-'*23)
def add_info():
'''
先提示用户输入信息,然后在已有信息中查找,如果已存在则结束函数,不存在则添加
:return:
'''
id_info = input('请输入学员学号:')
name_info = input('请输入学员姓名:')
tel_info = input('请输入学员电话号:')
dict_info = {}
global info
for i in info:
if i['name'] == name_info:
print('学员信息已存在,添加失败')
break
else:
dict_info['id'] = id_info
dict_info['name'] = name_info
dict_info['tel'] = tel_info
info.append(dict_info)
print('添加成功')
def del_info():
'''如果要删除的学员信息不存在,则结束函数,如果存在则删除'''
name_info = input('请输入你要删除的学员信息的姓名')
global info
for i in info:
if i['name'] == name_info:
info.remove(i)
print('删除成功')
break
else:
print('该学员不存在')
def modify_info():
name_info = input('请输入你要修改的学员信息的姓名:')
tel_info = input('请输入你要修改的学员的电话信息:')
global info
for i in info:
if i['name'] == name_info:
i['tel'] = tel_info
print('修改成功')
break
else:
print('你要修改的学员的信息不存在')
def search_info():
name_info = input('请输入你要查找的学员信息的姓名:')
for i in info:
if i['name'] == name_info:
print(f"学员学号:{i['id']}\t学员姓名:{i['name']}\t学员电话:{i['tel']}")
break
else:
print("学员信息不存在")
def print_ifo():
for i in info:
print(f"学员学号:{i['id']}\t学员姓名:{i['name']}\t学员电话:{i['tel']}")
while True:
menu()
option = int(input('请输入你要进行的操作:'))
if option == 0:
exit(0)
elif option == 1:
add_info()
elif option == 2:
del_info()
elif option == 3:
modify_info()
elif option == 4:
search_info()
elif option == 5:
print_ifo()


