file_handle.seek(0)
下面是一个简易的学员管理系统:
import os # 添加学员函数 def add_student(): # 输入学员姓名、年龄、电话 name = input('请输入学员姓名:') age = input('请输入学员年龄:') phone = input('请输入学员电话:') # 把name、age、phone放在小列表中 student = [name, age, phone] # 把小列表添加到所有学员的大列表中 # append(object) insert(index, object) extend(iterable) print(student_list) student_list.append(student) print('******添加学员成功******') print(student_list) # 查询学员函数 def query_student(): # 1.查询所有学员 # 2.输入学员姓名查询学员 得到查询的学员的序号 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)) # 修改学员函数 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.删除所有学员') # 获取输入的内容 并转换为整数类型 num = int(input('请选择您的操作:')) while num not in range(1, 3): num = int(input('选项错误,请重选:')) # 判断选择选项 if num == 1: # 1.展示所有学员的信息 query_student() # 2.选择删除的序号 index = int(input('请输入要删除的学员序号:')) # 3.判断选择序号是否在范围内 while index not in range(0, len(student_list)): index = int(input('没有该序号,请重选:')) # 4.删除指定索引的数据 del student_list[index] # student_list.pop(index) else: # 确认删除 rs = input('确定要删除所有信息?y(确定)/n(取消):') if rs == 'y': # 删除列表中的所有的数据 student_list.clear() else: print('删除数据操作已取消!') # 学员信息保存函数 def save_data(): file_handle = open('student_info.txt','w') for student in student_list: for info in student: file_handle.write(info) file_handle.write(' ') file_handle.write('\n') file_handle.close() # 学员信息读取函数 def read_data(): if os.path.exists('student_info.txt') == True: file_handle = open('Student.txt','r') students = file_handle.readlines() for student in students: student = student.strip('\n') list = student.split(' ') list.pop() student_list.append(list) file_handle.close() # 1.声明大列表,存放所有学员信息 student_list = [] read_data() print(student_list) # 2.while循环 while True: print('*******学员管理系统V2.0********') print('*******出品人:######## ********') 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: save_data() print('程序已结束!') break