es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Función de modo (Python)

Intenté escribir la función de moda:

C=[13, 15, 16, 19, 20, 20]
def moda(x):
  y={}
  for a in x:
    if not a in y:
      y[a]=1 
    else:
      y[a]+=1 
    return [g for g,l in y.items() if l==max(y.values())]
print("La moda de la lista es", moda(C))

pero la salida es 13. ¿Qué está mal en el código?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Hay un problema de indentación en el código ya que la declaración de retorno está ubicada dentro del bucle for. Esto hace que la función devuelva el resultado después de la primera iteración del bucle, lo que resulta en una salida incorrecta. Para solucionar esto, la declaración de retorno debe colocarse fuera del bucle, al final del bloque de la función.

Comments are closed.