当前位置: 代码迷 >> 综合 >> 学生信息转换(python)
  详细解决方案

学生信息转换(python)

热度:86   发布时间:2024-01-21 03:11:05.0
def get_all_students():students = []f = open('学生.txt')for line in f:line = line.replace('\n', '')student = line.split(' ')students.append(student)f.close()return studentsdef add_student():students = get_all_students()id = input('学号: ')name = input('姓名: ')sex = input('性别: ')age = input('年龄: ')grade_class = input('班级: ')major = input('专业: ')college = input('学院: ')phone_number = input('电话号码: ')students.append([id, name, sex, age, grade_class, major, college, phone_number])f = open('学生.txt', 'w')for i in range(len(students)):student = ' '.join(students[i]) + '\n'f.write(student)f.close()print('学生记录添加成功!')def disaplay_all_students():students = get_all_students()for i in range(len(students)):for j in  range(len(students[i])):print(students[i][j], end=' ')print()def id_disaplay_student():id = input('学号: ')found = Falsestudents = get_all_students()for i in range(len(students)):if (students[i][0] == id):found =Truefor j in range(len(students[i])):print(students[i][j], end=' ')breakif not found:print(f'学生信息中没有学号为{id}的学生!')def name_disaply_student():name = input('姓名: ')students = get_all_students()found = Falsefor i in range(len(students)):if (students[i][1] == name):found = Truefor j in range(len(students[i])):print(students[i][j], end=' ')breakif not found:print(f'学生信息中没有姓名为{name}的学生!')def query_student():  # 查询学生记录while True:print('\n查询学生记录\n')print('=================')print('1.按学号查询学生记录')print('2.按姓名查询学生记录')print('3.查询全部学生记录')print('4.返回上级菜单')print('=================')mc3 = int(input('输入菜单号:'))if mc3 == 1:id_disaplay_student()elif mc3 == 2:name_disaply_student()elif mc3 == 3:disaplay_all_students()else:breakdef modify_student():  # 修改学生信息students = get_all_students()id = input('需要修改信息的学生的学号: ')new_age = input('年领: ')new_phone_number = input('电话号码: ')found = Falsefor i in range(len(students)):if (students[i][0] == id):found = Truestudents[i][3] = new_agestudents[i][6] = new_phone_numberprint('修改成功!')for j in range(len(students[i])):print(students[i][j], end=' ')breakif not found:print(f'学生信息中没有学号为{id}的学生!')f = open('学生.txt', 'w')for i in range(len(students)):student = ' '.join(students[i]) + '\n'f.write(student)f.close()def delete_student():students = get_all_students()id = input('输入要删除信息的学生的学号:')found = Falsefor i in range(len(students)):if (students[i][0] == id):found = Truebreakif not found:print(f'学生信息中没有学号为{id}的学生!')else:del students[i]print(f'学号为{id}的信息已成功删除!')f = open('学生.txt', 'w')for i in range(len(students)):student = ' '.join(students[i]) + '\n'f.write(student)f.close()def login():username = input('输入用户名: ')password = input('输入密码: ')if username == 'zl' and password == '202111':while True:print('\n学生信息管理\n')print('===========')print('1. 添加学生记录')print('2. 查询学生记录')print('3. 修改学生记录')print('4. 删除学生记录')print('5. 返回上级菜单')print('===========')mc2 = int(input('输入菜单号: '))if mc2 == 1:add_student()elif mc2 == 2:query_student()elif mc2 == 3:modify_student()elif mc2 == 4:delete_student()else:breakelse:print('\n用户名或密码错误,请重新登录\n')# 主程序
while True:print('用户登录')print('==========')print('1.登录')print('2.退出')print('==========')mc1 = int(input('输入菜单号: '))if mc1 == 1:login()elif mc1 == 2:print('\n谢谢使用本程序\n')break

  相关解决方案