Curso de python III

python_header

La entrada anterior terminamos haciendo un pequeño programa que calculaba la temperatura media de 3 días de la semana y mostraba un mensaje al usuario. Se podría decir que hacía su trabajo pero no llegó a quedar como debería. Por una parte tuvimos que hacer dos print’s por no convertir el dato float a string y por otra parte el resultado nos daba muchos decimales, cosa que con uno hubiera sido suficiente.

Pues bien es hora de solucionar esas dos cuestiones y así aprendemos a convertir datos sobre la marcha y a redondear el resultado.

El programa original que habíamos hecho era el siguiente

python_10

así que vamos a empezar por convertir el dato de la variable resultadoMedia(float) a string para que pueda ser concatenado con el resto de la frase.

La conversión se realiza usando una serie de funciones que nos facilitan este trabajo. Las funciones son las siguientes y simplemente hay que incluir la variable dentro de los paréntesis y ya lo tendremos convertido:

-str()    -> Convierte a la variable a String

-int()    -> Convierte la variable a número entero

-float()    -> Convierte la variable a número decimal

Existen más tipos pero estos son los más usados. Un ejemplo para convertir la variable edad(que debe ser un número entero(int)) sería     str(edad).

Si lo hacemos con nuestro código todo quedará mucho mas legible

python1

Y ahora toca realizar el redondeo de la variable resultadoMedia, la cual nos sacaba 14 decimales y solo necesitamos uno. Aquí volvemos a usar otra función que nos proporciona Python, la función round().

La función round() necesita dos parámetros, uno es el número o variable a redondear y otro cuantos decimales necesitamos. Un ejemplo para redondear 25.4423 en un decimal sería este  round(25.4423, 2)

Vamos a implementarlos en nuestro código y seguramente lo veamos más claro. Crearemos otra variable y será ésta la que usaremos.

python2

Hemos creado la variable resultadoMediaRedondeado con el valor de resultadoMedia y indicándole que solo queremos un decimal. En el print final he vuelto a concatenar al final ºC para que se sepa que son grados Celsius. El resultado es el siguiente

 

python3

Ahora sí se puede decir que el programa queda por terminado.

 

Entrada de datos de teclado

Teníamos pendiente de Python I la recogida de datos del usuario mediante teclado pero antes debíamos aclarar algunos conceptos básicos para seguir adelante a buen ritmo.

La recogida de datos se realiza mediante la función input(), en la cual como argumentos se pasa una frase que preguntaremos al usuario( para saber que tiene que teclear claro). Un ejemplo sería:

nombre = input(“¿Cómo te llamas?”)

Esto preguntaría al usuario su nombre e inmediatamente el programa esperaría a que el usuario ingresara su nombre y pulsara Enter para posteriormente guardar el resultado en la variable nombre. Luego podríamos usar esa variable para lo que queramos como veremos en el siguiente ejemplo:

python10

y ejecutaría lo siguiente:

python11

 

La entrada por teclado nos abre multitud de posibilidades cuando se interactúa con un usuario.

Seguramente a alguno o alguna se le haya ocurrido que ocurriría si el cliente se equivoca e introduce un número. Pues por lo pronto daría un error y el programa se pararía, ya que estaríamos concatenando un string con un número entero(int).

Esto se maneja con excepciones y lo daremos más adelante.

Espero que hayan disfrutado y aprendido con esta nueva parte del Curso de Python y nos vemos en la siguiente entrada donde daremos los condicionales y un haremos un pequeño programa para resumir todo lo que hemos dado.

Un salu2!

Curso de Python I
Curso de Python II
Curso de Python III
Curso de Python IV
Curso de Python V
Curso de Python VI
Curso de Python VII
Curso de Python VIII
Curso de Python IX
Curso de Python X
Curso de Python XI
Curso de Python XII
Curso de Python XIII
Curso de Python XIV