Funciones input() y raw_input() en pyton.


He tenido problemas para enteder las funciones necesarias para introducir datos por el teclado en python. Encontré ya las funciones necesarias: son input() y raw_input.

¿Cómo trabajan estas funciones en python 2.7.6?

input()

Si se usa esta función entonces estaremos esperando solo valores enteros. Si se llega a dar el caso de que introducimos elementos que no son enteros entonces nos dará un error.

raw_input()

Esta función convierte cualquier dato en una cadena por lo que, aunque metamos enteros en realidad, la función los interpretará como cadena.

De acuerdo a la bibliografía consultada lo mejor es usar la función raw_input() y luego utilizar alguna de funcion de conversión para convertir al tipo de dato deseado.


Con esto me queda claro qué es lo que lo que debo estudiar ahora son als funciones de conversión.

Información importante encontrada

Al navegar por diferentes blogs que hablaban sobre las funciones de entrada por teclado de las funciones input() y raw_input() me encontré con información importante que sobre el tema.

De acuerdo a la fuente (1) si usamos una cadena cuando se emplea la función input() que espera un entero nos saldrá el siguiente error:

Traceback (most recent call last)

Este mensaje de error desaparece si tecleamos en la entrada el dato entre comillas. Si hacemos esto el problema desaparecerá. Confiar en que el usuario haga lo anterior no es conveniente así que por eso se recomienda usar la función raw_input() y luego usar funciones de conversión.

¿Qué hay del paréntesis?

Como habrán notado tanto input() como raw_input() tienen un par de paréntesis a la izquierda de la palabra (tal y como debe ser cuando se trata de funciones). Esto nos da la idea de que podemos colocar algo entre ellos. Es verdad, Si colocamos algo entre comillas entonces aparecerá en la pantalla al llegar a esa parte la ejecución del script.

raw_input(“algo”)

Eso nos permite formular una pregunta que le de una idea al usuario de lo que se espera que responda

raw_input(“¿Cuál es tu nombre?”)

Espero que estas notas sean útiles para otras personas.





Comentarios

Entradas populares