# 打开文本
with open('/Users/zhanglihui/Desktop/test/33.txt','r',encoding='utf-8') as file1:
file_lines = file1.readlines()# 读取全部内容,并以数列的形式返回结果,配合for in 使用
dict_scores = {}# 空字典,便于后面创建分数为键,姓名为值的字典
list_scores = []# 空列表,便于后面创建分数为元素的列表,且可.sort()排序
final_scores = []# 空列表,便于后面创建新的降序的列表,最终目的
for i in file_lines:# 对初始文本进行遍历
name = i[:-4]# 姓名
score = i[-4:-1]# 分数
dict_scores[score] = name# 将上面的空字典加入元素,分数为键,姓名为值
list_scores.append(score)# 将上面的空列表加入元素,分数
list_scores.sort()# 将分数的列表排序
for i in list_scores:# 将排好序的列表按序遍历
result = dict_scores[i] + str(i) + '\n'# 得到一个个分数降序的元素
final_scores.append(result)# 集中放在空列表中
# 将新排序方法写入文本
with open('/Users/zhanglihui/Desktop/test/33.txt','w',encoding='utf-8') as file2:
file2.writelines(final_scores)
网友评论