Python 程序显示嵌套列表中所有第二低成绩的学生姓名
pythonserver side programmingprogramming更新于 2025/12/18 21:00:17
假设我们在一个嵌套列表中有每个学生的姓名和成绩,我们必须显示成绩第二低的学生的姓名。如果有多个学生的成绩排名第二低,则按字母顺序重新排列这些学生,并将每个名字打印在新行上。
因此,如果输入为 students = [['Amal',37],['Bimal',37],['Tarun',36],['Akash',41],['Himadri',39]], 则输出为 Amal、Bimal 的成绩均为第二低 37,按字母顺序排列。
为了解决这个问题,我们将遵循以下步骤 −
- min_mark := students 中所有 x 的最低分数
- students := 学生 x 列表 for all x in students if score of > min_mark
- min2_mark := students 中所有 x 的最低分数
- students := 对列表进行排序 [如果 x 的分数与学生相同,则对学生中所有 x 的姓名进行排序
- min2_mark]
- 对 students 中的每个 x,执行
- 显示 x
示例
让我们看看下面的实现以便更好地理解
def solve(students): min_mark = min(x[1] for x in students) students = [x for x in students if x[1] > min_mark] min2_mark = min(x[1] for x in students) students = sorted([x[0] for x in students if x[1] == min2_mark]) for x in students: print(x) students = [['Amal',37],['Bimal',37],['Tarun',36],['Akash',41],['Himadri',39]] solve(students)
输入
[['Amal',37],['Bimal',37],['Tarun',36],['Akash',41],['Himadri',39]]
输出
Amal Bimal
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

