如何基于现有Python代码从grade_percentage_list中找出最高分学生
不用额外建类,直接这么搞就行
你的grade_percentage_list是姓名和分数交替存储的结构(比如["张三", 85, "李四", 92]),不需要创建新的静态类,直接利用列表的索引规律就能解决问题:
- 先取列表里第一个学生和对应分数,作为初始的最高分和学生姓名
- 从索引1开始,以步长2遍历所有分数的索引,同时通过
当前索引-1获取对应的学生姓名 - 逐个比较分数,更新当前的最高分和对应学生
代码示例:
# 假设grade_percentage_list已生成完成 if not grade_percentage_list: print("没有学生数据") else: max_score = grade_percentage_list[1] top_student = grade_percentage_list[0] # 按步长2遍历所有分数的索引 for i in range(1, len(grade_percentage_list), 2): current_score = grade_percentage_list[i] current_name = grade_percentage_list[i-1] if current_score > max_score: max_score = current_score top_student = current_name print(f"得分最高的学生是:{top_student},分数:{max_score}%")
这种方式完全基于你现有的列表工具实现,既解决了混合列表的遍历问题,也不需要额外定义类。
内容的提问来源于stack exchange,提问作者VincentOfTheHighlands
相关产品推荐
相关产品推荐

