import os import json # Import json module for better file handling from openpyxl import workbook # 学生信息字典 student_info = {} def print_menu(): print('-' * 30) print('1. 添加学员信息') print('2. 删除学员信息') print('3. 修改学员信息') print('4. 查询学员信息') print('5. 显示所有学员信息') print('6. 保存信息') print('7. 退出系统') print('-' * 30) def add_student(): # 添加学员信息 name = input('请输入学员姓名:') student_id = input('请输入学员ID:') gender = input('请输入学员性别:') phone = input('请输入联系方式:') student_info[student_id] = {'姓名': name, 'id': student_id, '性别': gender, '手机号': phone} print('学员信息添加成功!') def delete_student(): # 删除学员信息 student_id = input('请输入要删除的学员ID:') if student_id in student_info: del student_info[student_id] print('删除学员信息成功!') else: print('该ID不存在,删除失败!') def modify_student(): # 修改学员信息 student_id = input('请输入要修改的学员ID:') if student_id in student_info: name = input('请输入新的姓名:') phone = input('请输入新的联系方式:') student_info[student_id]['姓名'] = name student_info[student_id]['手机号'] = phone print('学员信息修改成功!') else: print('该ID不存在,修改失败!') def search_student(): # 查询学员信息 student_id = input('请输入要查询的学员ID:') if student_id in student_info: print(student_info[student_id]) else: print('该ID不存在!') def print_all(): # 显示所有学员信息 print('所有学员信息如下:') for student_id, info in student_info.items(): print(f'ID: {id}, 姓名: {info["姓名"]}, 性别: {info["性别"]}, 联系方式: {info["手机号"]}') def save_info(): # 保存信息到文件 try: with open('student_info.txt', 'w', encoding='utf-8') as f: json.dump(student_info, f, ensure_ascii=False, indent=4) print('信息保存成功!') except Exception as e: print(f'信息保存失败! Error: {e}') def load_info(): # 从文件加载信息 if os.path.exists('student_info.txt'): try: with open('student_info.txt', 'r', encoding='utf-8') as f: data = f.read() student_info.update(json.loads(data)) print('信息加载成功!') except Exception as e: print(f'信息加载失败! Error: {e}') def main(): load_info() # Load existing information from file at the beginning while True: print_menu() choice = int(input('请选择操作:')) if choice == 1: add_student() elif choice == 2: delete_student() elif choice == 3: modify_student() elif choice == 4: search_student() elif choice == 5: print_all() elif choice == 6: save_info() elif choice == 7: break else: print('输入错误,请重新输入!') if __name__ == '__main__': main()