miércoles, 18 de enero de 2017

[Tutorial Python] 5. Función Input - Datos ingresados por el usuario.



Para empezar definamos lo que es un "usuario". En pocas palabras: Un usuario es toda aquella persona que interactuará con nuestro programa. He hablado con algunos desarrolladores y todos coinciden en algo: el usuario es el sujeto principal de todo código de programación; en el entendido de que nuestro programa debe de ser desarrollado de tal manera que cualquier persona pueda entender cómo trabaja y qué tiene que hacer a continuación sin la necesidad de abusar de algún tutorial o manual de uso.

Ahora, como el usuario es aquella persona que utilizará nuestro software; también se hace obvio que es el usuario el que ingresará un dato o un conjunto de datos para que el programa funcione. Por ejemplo:

Imaginemos que estamos programando una calculadora. La función de una calculadora es realizar operaciones sobre los números que el usuario elija. Una calculadora que no admita datos del usuario no seria muy útil ¿verdad?

Para hacer que nuestro programa admita datos de usuario en Python existe la función input.

Esta función tiene la siguiente sintaxis:
x = input ("argumento")
Un ejemplo:
edad = input ("Ingrese su edad: ")
Al momento de ejecutar el programa aparecerá algo así:
Da click en la imagen para ampliar
PyCharm estará esperando a que ingreses un número. Así que escribe tu edad y presiona Enter ¿Pasó algo? Pues no, porque no dimos ninguna otra instrucción a parte de solicitar la edad al usuario. Más abajo hay un ejemplo más completo, así que no desesperes, tenemos que aprender algo más antes de hacer ejemplos prácticos.

Cabe mencionar, y es muy importante que lo tengas en cuenta a la hora de programar, que la función input considerará todos los datos como string (texto), así que si quieres hacer operaciones con los datos de usuario tendrás que hacer una conversión de tipos de datos que se explicó en un post anterior (Si no recuerdas los tipos de datos da click aquí).

Entonces, tomando en cuenta lo anterior, si queremos que la edad del usuario sea considerada como un dato numérico entero por el programa, tendríamos que escribir:

edad = int("Ingrese su edad: ")

o bien, si queremos trabajar con decimales:

edad = float("Ingrese su edad: ")

Ahora que sabemos cómo utilizar la función input podremos hacer un programa que sume un número x y un número y, los cuales serán ingresados por el usuario:

print("\nEste programa sumará un valor x más un valor y\n")
x = float(input("Ingrese el valor de x: "))
y = float(input("Ingrese el valor de y: "))
suma = x + y
print("\nEl resultado es: ", suma, "\n\nFIN DEL PROGRAMA")

Ejecuta, utiliza, analiza y juega con el código y, a continuación, responde lo siguiente:
  • ¿Qué pasaría si no declaráramos el tipo de dato? ¿Daría el mismo resultado?
  • ¿Qué tendría que cambiar para hacer otro tipo de operación?
  • ¿Qué pasa si ingreso un número negativo como usuario? ¿Da algún tipo de error?
  • ¿Puedo hacer que el programa sea un poco más entendible?
  • ¿Un poco más intuitivo?
  • ¿Un poco más atractivo?
 Intenta crear un programa con lo que has aprendido hasta ahora. Cualquier duda, comentario o aportación son bienvenidos; tan solo escríbenos algo más abajo. Saludos.

Entrada siguiente: 6. Jerarquía de operaciones.