You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

嵌套循环学习遇问题:代码返回空列表,需修正以获取目标学生

问题解决:获取分数重复≥3次的学生名单

原代码核心错误

  • 你用notas.count(alumno)统计次数完全错误:alumno是学生姓名(字符串类型),但notas里存的是分数(数字类型),两者无法匹配,所以每次计数结果都是0,永远触发不了contador > 2的条件,最终返回空列表。

修改思路(贴合嵌套循环学习场景)

  1. 先用嵌套循环统计每个分数的出现次数,找出出现次数≥3的分数值
  2. 遍历学生列表,把对应分数属于上述值的学生姓名收集起来

修改后的代码

alumnos = ["Pepe", "Juan", "Margarita", "Ariana"]
notas = [99, 99, 99, 80]

def pregunta_3(alumnos, notas):
    result = []
    # 嵌套循环统计分数出现次数,筛选出重复≥3次的分数
    notas_repetidas = []
    for i in range(len(notas)):
        contador = 0
        # 内层循环遍历所有分数,统计当前分数的出现次数
        for j in range(len(notas)):
            if notas[i] == notas[j]:
                contador += 1
        # 避免重复添加同一个分数
        if contador >= 3 and notas[i] not in notas_repetidas:
            notas_repetidas.append(notas[i])
    
    # 收集对应分数符合条件的学生姓名
    i = 0
    while i < len(alumnos):
        if notas[i] in notas_repetidas:
            result.append(alumnos[i])
        i += 1
    return result

resultado = pregunta_3(alumnos, notas)
print("Resultado de la pregunta 3:", resultado)

运行结果

Resultado de la pregunta 3: ['Pepe', 'Juan', 'Margarita']

内容的提问来源于stack exchange,提问作者Amadis131

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 00:02:40