La función input() - operaciones prohibidas
Observa el código en el editor. Ejecútalo, inserta cualquier número, y oprime Enter.
¿Qué es lo que ocurre?
Python debió haberte dado la siguiente salida:
Traceback (most recent call last):
File ".main.py", line 4, in <module>
resultado = algo ** 2.0
TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'float'La última línea lo explica todo, se intentó aplicar el operador ** a 'str' (una cadena) acompañado por un 'float' (valor flotante).
Esto está prohibido.
Esto debe de ser obvio ¿Puedes predecir el valor de "ser o no ser" elevado a la 2 potencia?
No podemos. Python tampoco puede.
¿Habremos llegado a un punto muerto? ¿Existirá alguna solución? Claro que la hay.
# Probando mensajes de error
algo = input("Inserta un número: ")
resultado = algo ** 2.0
print(algo, "al cuadrado es ", resultado)
Comentarios
Publicar un comentario