Problema con un ejercicio

Iniciado por thejaks77, 5 Diciembre 2016, 22:58 PM

0 Miembros y 1 Visitante están viendo este tema.

thejaks77

Hola buenas, tengo que hacer un ejercicio de python que lea una lista de números y escriba por pantalla una lista con los cuadrados de los números enteros leídos y los números de la lista original. No comprendo el porque me salta un error en esta linea de código " n=int(input("Nuevo número: "))" la que se encuentra dentro del bucle, alguien sabe ¿porqué?:

Código (python) [Seleccionar]
print("Ve introduciendo números enteros, o una cadena vacía para acabar...")
n=int(input("Nuevo número: "))
lista=[]
   
while n != "":
    lista.append(n)
    n=int(input("Nuevo número: "))

lista_cuadrada=[]
for i in range(lista):
    lista_cuadrada.append(lista[i]**2)

print("Cuadrados de los números leídos: {0}".format(lista_cuadrada))
print("Números leídos: {0}".format(lista))



El error es el siguiente:

Traceback (most recent call last):
File "C:\Users\TheJaks77\workspace\Programacion\Practicas\Prac4\ej04.py", line 7, in <module>
n=int(input("Nuevo número: "))
ValueError: invalid literal for int() with base 10: ''

MOD: Etiqueta GeSHi.

tincopasan

#1
pues el mensaje te lo dice! int no puede convertir a entero una cadena vacía! o sea está mal la lógica del script

ahh por cierto esta línea también está mal:
Código (python) [Seleccionar]
lista_cuadrada.append(lista[i]**2)