Orlando Sánchez
EstudianteDiego Alessandro Galvez Rodriguez
EstudianteBrayan Estiben Rodallega Saavedra
EstudianteEduardo Peña Ramos
EstudianteEmmanuel Paiva
EstudianteOmar Cuarenta
EstudianteVictor Javier Vidal Durón
EstudianteDiego Cruz
EstudianteEnrique Barrera
EstudianteEdwin Absalón Martinez Moreno
EstudianteFabricio González Guasque
EstudianteAlejandro Anaya
EstudianteWaldir Zapata Garcia
EstudianteWaldir Zapata Garcia
EstudianteVictor Ortiz
EstudianteDidier Fernando Aragón Moreno
EstudianteFernando Jesús Núñez Valdez
EstudianteJosé Miguel Reyes
EstudianteLuis Kennedy Saavedra Fuentes
Estudianteiecgerman .
Estudianteandres barrera
EstudianteHarold Zurita Simon
Estudiantedef calculate_average(numbers): try: if len(numbers) == 0: raise ValueError("La lista está vacía") return sum(numbers) / len(numbers) except TypeError: raise TypeError("La lista contiene elementos no numéricos")
def calculate_average(numbers): try: result = sum(numbers) / len(numbers) except ZeroDivisionError: raise ValueError("La lista está vacía") except TypeError: raise TypeError("La lista contiene elementos no numéricos") else: return result
Pusiste el error de división por cero. Muy bien.
Mi solución:
def calculate_average(numbers): # Tu código aquí 👈 accum = 0 if len(numbers) == 0: raise ValueError("La lista está vacía") for number in numbers: if not isinstance(number, (int, float, complex)): raise TypeError("La lista contiene elementos no numéricos") accum += number return accum / len(numbers)
Alguien sabe que puedo hacer aqui para que no me arroje este error? lo estoy probando en visual studio code y funciona perfecto
def calculate_average(numbers): if not numbers: raise ValueError("La lista está vacía") if not all(isinstance(i, (int, float)) for i in numbers): raise TypeError("La lista contiene elementos no numéricos") return sum(numbers) / len(numbers)
def calculate_average(numbers): if numbers ==[]: raise ValueError('"La lista está vacía"') no_numero = list(filter(lambda valor: isinstance(valor, str), numbers )) if no_numero != []: raise TypeError("La lista contiene elementos no numéricos") return sum(numbers) / len(numbers) ```def calculate\_average(numbers): if numbers ==\[]: raise ValueError('"La lista está vacía"') no\_numero = list(filter(lambda valor: isinstance(valor, str), numbers )) if no\_numero != \[]: raise TypeError("La lista contiene elementos no numéricos") return sum(numbers) / len(numbers)
.
.
.
.
.
def calculate_average(numbers): if len(numbers)==0: #print("La lista está vacía") raise ValueError("La lista está vacía") son_numericos = all(isinstance(elemento, (int, float)) for elemento in numbers) if not son_numericos: raise TypeError("La lista contiene elementos no numéricos") return round(sum(numbers)/len(numbers),2)
def calculate_average(numbers): # Tu código aquí 👈 try: suma = 0 if len(numbers) == 0: raise ValueError("La lista está vacía") for numero in numbers: suma += numero return suma/len(numbers) except ZeroDivisionError: return "La lista está vacía" except TypeError: raise TypeError("La lista contiene elementos no numéricos")
🛡️🛡️Escudo anti-spoilers🛡️🛡️
Mi solución al reto:
def calculate_average(numbers): if not numbers or len(numbers) <= 0: raise ValueError("La lista está vacía") average = 0 for n in numbers: if not isinstance(n, (int, float)): raise TypeError("La lista contiene elementos no numéricos") average += n return round(average / len(numbers), 2)
from functools import reduce def calculate_average(numbers): if (len(numbers)==0): raise ValueError("La lista está vacía") try: #return (list(lambda x,y: x + y, numbers)/len(numbers)) return (reduce(lambda x,y: x+y,numbers)/len(numbers)) except TypeError: raise TypeError("La lista contiene elementos no numéricos") if __name__ == '__main__': response = calculate_average([1, 2, 3, 4, 5]) print(response) #Output: 3.0 response = calculate_average([10, 20, 30, 40, 50]) print(response) #Output: 30.0 response = calculate_average([1, 2, '3', 4, 5]) print(response) #TypeError: La lista contiene elementos no numéricos response = calculate_average([]) print(response) #ValueError: La lista está vacía
mi resultado: . . . . . . . . . . . . . . . . . . . . .
def calculate_average(numbers): # Tu código aquí 👈 if len(numbers) == 0: raise ValueError('La lista está vacía') try: return sum(numbers) / len(numbers) except TypeError: raise TypeError('La lista contiene elementos no numéricos') pass
def calculate_average(numbers): if len(numbers) == 0: raise ValueError("La lista está vacía") total = 0 for num in numbers: if not isinstance(num, (int, float)): raise TypeError("La lista contiene elementos no numéricos") total += num return total / len(numbers) response = calculate_average([]) print(response)```
My solution . . . . . .. . . . . .
.. . . .
def calculate_average(numbers): if len(numbers) == 0: raise ValueError("La lista está vacía") for i in numbers: if type(i) == str or type(i) == bool: raise TypeError("La lista contiene elementos no numéricos") else: return sum(numbers)/len(numbers)
Mi solución:
def calculate_average(numbers): if not numbers: raise ValueError("La lista está vacía") total = 0 count = 0 for num in numbers: if not isinstance(num, (int, float)): raise TypeError("La lista contiene elementos no numéricos") total += num count += 1 return total / count
def calculate_average(numbers): """Function to calculate the average""" # average = map(lambda num: num, numbers) try: if len(numbers) == 0: raise ValueError("La lista está vacía") return sum(num for num in numbers) / len(numbers) except TypeError: raise TypeError("La lista contiene elementos no numéricos") response = calculate_average([1, 2, 3, 4, 5]) print(response)
Listo!!!
Opcion = int(input("Elija una lista(1,2,3 y 4):")) if Opcion == 1: Lista = [1, 2, 3, 4, 5] if Opcion == 2: Lista = [10, 20, 30, 40, 50] if Opcion == 3: Lista = [] if Opcion == 4: Lista = [1, 2, '3', 4, 5]
def CalculoP(Lista): try: Promedio = sum(Lista)/len(Lista) print(f"El promedio es :{Promedio}") except ZeroDivisionError: print("La lista esta vacía") except TypeError: print("Hay un String en la Lista") CalculoP(Lista)
Solución 😄. .
def calculate_average(numbers): try: return sum(numbers)/len(numbers) except TypeError: raise TypeError( "La lista contiene elementos no numéricos") except ZeroDivisionError: raise ValueError("La lista está vacía")