Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Lista de listas.

Aquí les dejo una versión más corta donde se hace todo el proceso de una sola vez:

group_grades = ['Juan', 8.0, 9.0, 10.0, 'María', 9.0, 7.0, 6.0, 'José', 3.4, 7.0, 7.0, 'Claudia', 5.5, 6.6, 8.0, 'Ana', 6.0, 10.0, 9.5]

names = []
grades = []

for i in range(0, len(group_grades), 4):
  names.append(group_grades[i])
  grades.append(group_grades[i+1:i+4])

'''
Qué hace paso a paso:

range(0, len(group_grades), 4)
Esto crea una secuencia que va de 4 en 4. O sea: i = 0, 4, 8, 12, 16, que son los índices donde aparece cada nombre en la lista original.

En cada iteración:

group_grades[i] es un nombre, que se agrega a la lista names.

group_grades[i+1:i+4] es un slice que toma las tres notas siguientes, que se agregan como sublista a grades.
'''

names, grades
1 respuesta

¡Hola, Mariana, espero que estés bien!

Tu solución para separar los nombres y las calificaciones de los estudiantes en listas separadas está muy bien planteada. Estás utilizando un enfoque eficiente al recorrer la lista group_grades en pasos de cuatro, lo cual es perfecto para este tipo de estructura de datos donde cada nombre es seguido por tres calificaciones.

Si quisieras imprimir los resultados, podrías hacer algo como esto al final de tu código:

print("Nombres:", names)
print("Calificaciones:", grades)

Esto te mostrará las dos listas separadas, una con los nombres y otra con las listas de calificaciones.

Espero que esta explicación te sea útil y te ayude a comprender mejor cómo trabajar con listas de listas en Python. ¡Bons estudios!