本文为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下
1.0版本学生管理系统
''' 1.添加学员 2.修改学员 3.查询学员 4.删除学员 0.退出程序 ''' student_list=[] while True: print('1.添加学员') print('2.修改学员') print('3.查询学员') print('4.删除学员') print('0.退出程序') sel_num=input('请输入您要进行的操作:') sel_num=int(sel_num) #如果选择的数字不在0~5 继续选择 while sel_num not in range(0,5): sel_num=input('您的选择无效,请重新选择:') sel_num=int(sel_num) if sel_num==1: name=input('请输入姓名:') age=input('请输入年龄:') sex=input('请输入性别:') person_list=[name,age,sex] student_list.append(person_list) print('添加成功!') elif sel_num==2: for x in range(0,len(student_list)): person=student_list[x] print('序号:%s 姓名:%s 年龄:%s 性别:%s '%(x,person[0],person[1],person[2])) index=input('请输入要修改的序号:') index=int(index) while index not in range(0, len(student_list)): index = input('您选择的序号无效,请重新选择:') index = int(index) person=student_list[index] name=person[0] age=person[1] sex=person[2] student_list[index][0]=input('请输入修改后的姓名:(%s):'%name) student_list[index][1]=input('请输入修改后的年龄:(%s):'%age) student_list[index][2]=input('请输入修改后的性别:(%s)'%sex) print('修改成功!') elif sel_num==3: for x in range(0,len(student_list)): person=student_list[x] name=person[0] age=person[1] sex=person[2] print('序号:%s 姓名:%s 年龄:%s 性别:%s '%(x,name,age,sex)) elif sel_num==4: for x in range(0,len(student_list)): person=student_list[x] print('序号:%s 姓名:%s 年龄:%s 性别:%s '%(x,person[0],person[1],person[2])) print('1.删除所有学员') print('2.删除选择的学员') num=input('请输入您的选择:') if num=='1': student_list.clear() else: index = input('请输入要删除学员的序号:') index = int(index) while index not in range(0, len(student_list)): index = input('您选择的序号无效,请重新选择:') index = int(index) del student_list[index] else: break
2.0版本学生管理系统---函数版--用列表存放学员信息
#添加学员函数 def add_student(): #输入学员姓名、年龄、电话 name=input('请输入学员姓名:') age=input('请输入学员年龄:') phone=input('请输入学员电话:') #把name、age、phone放在小列表中 student=[name,age,phone] # 把小列表添加到所有学员的大列表中 # append(object) insert(index,object) extend(iterable) student_list.append(student) print('添加学员成功!') #查询学员函数 def query_student(): #1.查询所有学员 #2.输入学员姓名 查询学员得到查询的学员的序号 print('1.查询所有学员') print('2.查询部分学员') num=int(input('请输入操作序号:')) while num not in range(1,3): num=int(input('选择无效,请重新输入:')) if num==1: print('**************学员信息列表***************') #遍历大列表 for x in range(0,len(student_list)): #根据x的值从大列表中取出小列表 student=student_list[x] #从小列表中取出姓名、年龄、电话 name=student[0] age=student[1] phone=student[2] print('序号:%s 姓名:%s 年龄:%s 电话:%s'%(x,name,age,phone)) else: name = input('请输入您要查询的学员姓名:') while 1: a=False for student in student_list: if student[0] == name: index = student_list.index(student, 0, 8) print('序号:%s 姓名:%s 年龄:%s 电话:%s'%(index,student_list[index][0],student_list[index][1],student_list[ index][2])) a=True if a==False: name=input('该学员没找到,请重新输入:') else: break # 修改学员的函数 def update_student(): #判断是否有学员信息,如果没有,直接结束函数的执行 if len(student_list)==0: print('没有学员信息,无法进行修改操作!') #强制结束函数的执行 return下面的代码都不会再执行了 return #1.查询学员信息 query_student() #2.选择要修改的学员序号 num=input('请选择要修改的学员序号:') #3.转换为整数 num=int(num) #4.判断选择的学员序号是否在范围内 while num not in range(0,len(student_list)): #不在范围,重新选择 num=input('没有该序号,请重选:') num=int(num) #5.根据选择的序号取出对应的小列表 student=student_list[num] new_name=input('请输入修改后的姓名(%s):'%student[0]) new_age=input('请输入修改后的年龄(%s)'%student[1]) new_phone=input('请输入修改后的电话(%s)'%student[2]) #6.修改小列表中的数据 student[0]=new_name student[1]=new_age student[2]=new_phone print('修改数据完成!') #删除学员 #1.根据学员序号删除 2.删除所有学员 3.根据学员的姓名来删除(有同名的) def delete_student(): if len(student_list)==0: print('没有学员信息,无法执行删除操作!') return print('1.根据学员序号删除') print('2.删除所有学员') print('3.根据学员姓名删除学员') #获取输入的内容并转换为整数类型 num=int(input('请输入您的选择:')) #判断选择的选项是否在范围内 while num not in range(1,4): num=int(input('没有该序号,请重新选择')) #判断选择的选项 if num == 1: # 1.查询学员信息 query_student() #2.选择删除的序号 num=int(input('请输入您要删除的学员序号:')) #判断选择序号是否在范围内 while num not in range(0,len(student_list)): num=int(input('序号无效,请重选!')) is_del=input('您确定要删除(%s)学员的信息吗?(y/n):'%student_list[num][0]) if is_del=='y': #删除列表中的所有数据 del student_list[num] #student_list.pop(index) print('%s学员信息删除成功!'%student_list[num][0]) if num==2: #确认删除 is_del=input('您确定要删除所有学员信息吗?y(确定)/n(取消):') if is_del=='y': #删除列表中的所有数据 student_list.clear() print('所有学员删除成功!') else: print('删除数据操作已去取消!') else: name = input('请输入您要删除的学员的姓名:') while 1: #定义列表存放不等于name的小列表 list = [] #遍历大列表 for student in student_list: #判断输入的name是否和小列表里name的相等 if student[0] != name: #找出与name不等的小列表所在的索引 index = student_list.index(student,0,len(student_list)) #将符合的小列表添加到list列表中 list.append(student_list[index]) #判断两个列表长度是否相等 相等说明大列表中不存在名字为name的小列表 if len(student_list) == len(list): name = input('序号不存在,请重新输入:') #存在符合的小列表 else: #清空大列表 student_list.clear() #循环将list列表的内容写入到空的大列表中 for dict in list: student_list.append(dict) break #1.声明一个大列表,存放所有学员信息 student_list=[] #2.while循环 while True: print('***********学员管理系统V2.0**************') print('1.添加学员') print('2.查询学员') print('3.修改学员') print('4.删除学员') print('0.退出程序') print('***************************************') #选择操作 num=input('请选择您的操作:') #转换为整数 num=int(num) #判断选择的选项是否在范围内 while num not in range(0,5): #重新选择 num=input('没有该选项,请重选:') #把字符串转换为整数类型 num=int(num) #根据选择的选项执行对应的操作 if num==1: #调用添加学员的函数 add_student() elif num==2: #调用查询学员的函数 query_student() elif num==3: #调用修改学员的的函数 update_student() elif num==4: delete_student() else: print('程序已结束!') break
2.1版本学生管理系统---函数版--用字典存放学员信息
#添加学员函数 def add_student(): #输入学员姓名、年龄、电话 name=input('请输入学员姓名:') age=input('请输入学员年龄:') phone=input('请输入学员电话:') #把name、age、phone放在小字典中 student={'name':name,'age':age,'phone':phone} # 把小字典添加到所有学员的大列表中 # append(object) insert(index,object) extend(iterable) student_list.append(student) print('添加学员成功!') #查询学员函数 def query_student(): #1.查询所有学员 #2.输入学员姓名 查询学员得到查询的学员的序号 print('1.查询所有学员') print('2.查询部分学员') num=int(input('请输入操作序号:')) while num not in range(1,3): num=int(input('选择无效,请重新输入:')) if num==1: print('**************学员信息列表***************') #遍历大列表 for x in range(0,len(student_list)): #根据x的值从大列表中取出小字典 student=student_list[x] #从小字典中取出姓名、年龄、电话 name=student['name'] age=student['age'] phone=student['phone'] print('序号:%s 姓名:%s 年龄:%s 电话:%s'%(x,name,age,phone)) else: name = input('请输入您要查询的学员姓名:') while 1: a=False for student in student_list: if student['name'] == name: index = student_list.index(student, 0, 8) print('序号:%s 姓名:%s 年龄:%s 电话:%s'%(index,student_list[index]['name'],student_list[index]['age'], student_list[index]['phone'])) a=True if a==False: name=input('该学员没找到,请重新输入:') else: break # 修改学员的函数 def update_student(): #判断是否有学员信息,如果没有,直接结束函数的执行 if len(student_list)==0: print('没有学员信息,无法进行修改操作!') #强制结束函数的执行 return下面的代码都不会再执行了 return #1.查询学员信息 query_student() #2.选择要修改的学员序号 num=input('请选择要修改的学员序号:') #3.转换为整数 num=int(num) #4.判断选择的学员序号是否在范围内 while num not in range(0,len(student_list)): #不在范围,重新选择 num=input('没有该序号,请重选:') num=int(num) #5.根据选择的序号取出对应的小字典 student=student_list[num] new_name=input('请输入修改后的姓名(%s):'%student['name']) new_age=input('请输入修改后的年龄(%s)'%student['age']) new_phone=input('请输入修改后的电话(%s)'%student['phone']) #6.修改小列表中的数据 student['name']=new_name student['age']=new_age student['phone']=new_phone print('修改数据完成!') #删除学员 #1.根据学员序号删除 2.删除所有学员 3.根据学员的姓名来删除(有同名的) def delete_student(): if len(student_list)==0: print('没有学员信息,无法执行删除操作!') return print('1.根据学员序号删除') print('2.删除所有学员') print('3.根据学员姓名删除学员') #获取输入的内容并转换为整数类型 num=int(input('请输入您的选择:')) #判断选择的选项是否在范围内 while num not in range(1,4): num=int(input('没有该序号,请重新选择')) #判断选择的选项 if num == 1: # 1.查询学员信息 query_student() #2.选择删除的序号 num=int(input('请输入您要删除的学员序号:')) #判断选择序号是否在范围内 while num not in range(0,len(student_list)): num=int(input('序号无效,请重选!')) is_del=input('您确定要删除(%s)学员的信息吗?(y/n):'%student_list[num]['name']) if is_del=='y': #删除列表中的所有数据 del student_list[num] #student_list.pop(index) print('%s学员信息删除成功!'%student_list[num]['name']) else: print('删除数据操作已去取消!') elif num==2: #确认删除 is_del=input('您确定要删除所有学员信息吗?y(确定)/n(取消):') if is_del=='y': #删除列表中的所有数据 student_list.clear() print('所有学员删除成功!') else: print('删除数据操作已去取消!') else: name = input('请输入您要删除的学员的姓名:') while 1: # 定义列表存放不等于name的小列表 list=[] # 遍历大列表 for student in student_list: # 判断输入的name是否和小字典里name的相等 if student['name']!=name: # 找出与name不等的小字典所在的索引 index=student_list.index(student) # 将符合的小字典添加到list列表中 list.append(student_list[index]) # 判断两个列表长度是否相等 相等说明大列表中不存在名字为name的小列表 if len(student_list)==len(list): name=input('序号不存在,请重新输入:') # 存在符合的小字典 else: # 清空大列表 student_list.clear() # 循环将list列表的内容写入到空的大列表中 for dict in list: student_list.append(dict) break #1.声明一个大列表,存放所有学员信息 student_list=[] #2.while循环 while True: print('***********学员管理系统V2.0**************') print('1.添加学员') print('2.查询学员') print('3.修改学员') print('4.删除学员') print('0.退出程序') print('***************************************') #选择操作 num=input('请选择您的操作:') #转换为整数 num=int(num) #判断选择的选项是否在范围内 while num not in range(0,5): #重新选择 num=input('没有该选项,请重选:') #把字符串转换为整数类型 num=int(num) #根据选择的选项执行对应的操作 if num==1: #调用添加学员的函数 add_student() elif num==2: #调用查询学员的函数 query_student() elif num==3: #调用修改学员的的函数 update_student() elif num==4: delete_student() else: print('程序已结束!') break
3.0版本学生管理系统--将学员信息存入文件中
def is_in_range(): index = input('请选择要(修改)删除的学员序号:') index = int(index) while index not in range(0, len(student_list)): index = input('您输入的序号不在范围内,请重新输入:') index = int(index) return index def add_stu(): name = input('请输入姓名:') age = input('请输入年龄:') sex = input('请输入性别:') person_list = [name, age, sex] student_list.append(person_list) print('添加成功!') def alter_stu(): index=is_in_range() person = student_list[index] name = person[0] age = person[1] sex = person[2] student_list[index][0] = input('请输入修改后的姓名:(%s):' % name) student_list[index][1] = input('请输入修改后的年龄:(%s):' % age) student_list[index][2] = input('请输入修改后的性别:(%s)' % sex) print('修改成功!') def see_stu(): for x in range(0, len(student_list)): person = student_list[x] name = person[0] age = person[1] sex = person[2] print('序号:%s 姓名:%s 年龄:%s 性别:%s ' % (x, name, age, sex)) def del_stu(): print('1.删除所有学员') print('2.删除选择的学员') num = input('请输入您的选择:') if num == '1': student_list.clear() else: index = is_in_range() del student_list[index] #声明保存数据的函数 def save_data(): #1.打开文件 file_handle=open('student_v2.txt',mode='w') #2.for循环遍历大列表 for student in student_list: #把列表中的数据用空格分开拼接成一个字符串 s=' '.join(student) #写入 file_handle.write(s) file_handle.write('\n') #3.关闭文件 file_handle.close() #引入os模块 import os #读取文件的函数 def read_data(): #判断文件是否存在 rs=os.path.exists('student_v2.txt') if rs==True: #1.打开文件 file_handle=open('student_v2.txt',mode='r') #2.取出信息 contents=file_handle.readlines() for content in contents: #去除/n content=content.strip('\n') #使用空格分割字符串,得到列表 list_1=content.split(' ') #将小列表添加到大列表中 student_list.append(list_1) # 3.关闭文件 file_handle.close() # 声明一个大列表,存放学院的姓名 student_list = [] read_data() while True: print('1.添加学员') print('2.修改学员') print('3.查询学员') print('4.删除学员') print('0.退出程序') sel_num = input('请输入您要进行的操作:') sel_num = int(sel_num) # 如果选择的数字不在0~5 继续选择 while sel_num not in range(0, 5): sel_num = input('您的选择无效,请重新选择:') sel_num = int(sel_num) # 添加学员 if sel_num == 1: add_stu() save_data() elif sel_num == 2: # 1.展示所有学员信息 see_stu() # 2.选择要修改的学员序号 alter_stu() save_data() elif sel_num == 3: see_stu() elif sel_num == 4: see_stu() # 2.选择要删除的学员序号 del_stu() save_data() else: break
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
2024年11月26日
2024年11月26日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]