Python小项目(学生成绩管理系统)
第七天:排序、显示部分
一.sort()部分
对于排序部分,首先要做的是判断是否存在.txt文件,并用readlines方法,读取.txt文件内的信息。
def sort():
if os.path.exists(filename): #判断是否存在.txt文件
with open(filename,'r',encoding='UTF-8') as file:
student_old= file.readlines() #把文件内容放到student_old里
#print('输出student_old')
#print(student_old)
student_new = []
for item in student_old:
d = dict(eval(item))
#print('输出d')
#print(d)
student_new.append(d)
#print('输出student_new')
#print(student_new)
else:
return
=========================================================================
这里如果不清楚student_old、d、student_new分别有哪些数据,可以跑一下上面#内的代码。
首先,student.txt文件内有1,2,3,4四个学生的信息。然后我们跑一遍代码,看看输出的内容。
这里我们可以发现,因为readlines是一次性全部读取.txt文件内的信息,所以student_old中,一共有四条学生信息。且这是一个列表。
student_old =
["{'name': '1', 'id': '1', 'chinese': '1', 'math': '1', 'english': '1'}\n",
"{'name': '2', 'id': '2', 'chinese': 2, 'math': 2, 'english': 2}\n",
"{'name': '3', 'id': '3', 'chinese': 3, 'math': 3, 'english': 3}\n",