1.贴题
题目来自大学计算机–Python算法实践(东北大学)
考试
初始化如下列表
alist = [20170123, 61, 20170233, 97, 20170123, 72, 20170233, 65, 20170110, 97]
该列表中下标为偶数的元素表示某个学生的学号,其后紧跟着的下标为奇数的元素表示该学生某门课程的成绩。
编程对该列表进行重新排序。(不限制使用函数或列表方法)
要求:
1、保持一个学号紧跟着一个成绩的数据格式不变
2、以学号按升序排列,当学号相同时,以成绩按降序排列
2.说明
思路如下
1. 将列表以(学号,成绩)的形式打包添加到新列表
2. 将新列表以先按学号升序,再按成绩降序排序
3. 将排序后的新列表再按逐个元素输出的方式覆盖输出到alist
3.参考代码
blist = [] #构建新的空列表blist
for i in range(len(alist)):