[MÚSICA] Hola y bienvenidos. En esta lección vamos a aprender la manera más gráfica con que el programa puede comunicar un resultado al usuario y esto es la escritura de texto en pantalla. Hasta ahora, cuando hemos interactuado con Python, lo hemos hecho siempre a través de lo que llamamos el modo interactivo. En este modo escribimos una línea a la vez, damos enter y el intérprete de Python la ejecuta. Recordemos estas instrucciones que nos permitían calcular el precio que tengo que pagar en el estacionamiento. Si solo escribimos estas líneas, la memoria queda llenada de esta manera tal como vimos anteriormente. El resultado queda almacenado en la variable precio, que está aquí, pero el precio no lo conocemos. Para conocerlo tenemos que escribir una expresión que consiste únicamente del nombre de la variable precio y Python la busca en memoria y nos da el resultado. En este modo interactivo, si queremos repetir los cálculos, tenemos que escribir otra vez cada una de estas líneas y en el fondo esta no es la manera que esperamos ejecutar un programa. Cuando hablamos de un programa, lo que estamos hablando es de un archivo que tiene todas las secuencias de instrucciones que queremos ejecutar. Se lo pasamos de una sola vez a Python para que las ejecute una a una y nos entregue un resultado como si fuera un guión. Entonces ahora vamos a usar esta misma secuencia de instrucciones pero la vamos a guardar en un archivo que le vamos a poner un nombre estacionamiento.py. Le pasamos a Python este archivo y Python lo que hace, bueno, lee las instrucciones y las ejecuta una a una, línea por línea y ejecuta lo que tiene que hacer en cada caso, guarda los nombres de las variable en memoria, hasta que los nombres se van guardando, van quedando las etiquetas puestas en cada posición, línea por línea y de esta manera llegamos a obtener el resultado correcto. La memoria, si nos fijamos, queda en el mismo estado que antes. Pero al final no aparece nada en pantalla cuando escribimos precio. Esto ocurre porque al ejecutar un programa a partir de un archivo, el intérprete no nos muestra el resultado de cada evaluación, de hecho tampoco queremos que lo haga. Sino que queremos tener más control de lo que se escribe en pantalla y para eso tenemos que decirle explícitamente hey, quiero que ahora escribas este resultado en la pantalla. Y la instrucción que nos permite hacer esto es una instrucción que vamos a llamar print. Tomemos ahora el mismo programa anterior y cambiemos simplemente la línea 5, en lugar de decir solamente precio que para el programa no significa mucho, vamos a decirle que escriba en pantalla el valor de la palabra precio utilizando print. De esta manera, al ejecutar el mismo programa anterior, vamos a ver que la última instrucción es la que le dice al lector de Python que debe escribir en pantalla el valor de la expresión que está entre paréntesis, precio, que en este caso es el valor 400. Ahora sí tenemos un resultado en pantalla. Entonces tenemos ahora la instrucción print, que nos permite decirle al programa mira, quiero que escribas en pantalla el resultado de esta expresión y lo que ocurre es que cuando el intérprete encuentra algo como esto es que primero calcula el valor de la expresión que está entre paréntesis y luego escribe ese resultado que calculó en la pantalla. you hemos visto ejemplos de esto, tal es la versión más sencilla es este programa que van a encontrar en casi cualquier tutorial de cualquier lenguaje de programación. El programa simple que escribe en pantalla el texto que dice hola mundo. Y esto hace exactamente lo que dijimos, evalúa el valor del texto que dice hola mundo, que es el valor hola mundo, y luego escribe esto en la pantalla. Pero también podemos usar variables, ahora podemos tener un programa con dos líneas donde en la primera línea almacenamos un valor de tipo string en la variable mensaje, y luego le decimos que imprima el valor almacenado en la variable que tiene nombre mensaje. Entonces ahora, si queremos conocer el valor de una expresión podemos entregársela a print para que sea evaluada y el programa imprime en pantalla su valor como en este ejemplo la expresión grande que hemos visto anteriormente. También podemos hacer un cálculo y almacenar el valor en una variable como en este caso una fórmula que convierte de Fahrenheit a Celsius y la guardamos en una variable de nombre Celsius. Lo calculamos midiendo una expresión y le decimos a print que lo escriba en pantalla. O también podemos usar una variable misma dentro de print como parte de otra expresión a evaluar, aquí escribimos print de una expresión que utiliza la variable de temperatura, le aplica la palabra de comparación con el valor 30, e imprime el resultado que en este caso es true. También podemos aprovechar print para escribir algunas frases que sean un poquito más interesantes, algo más que solo texto o que solo número. ¿Qué tal por ejemplo si queremos escribir el texto episodio x del libro, donde x es un número que aún no conocemos? Podemos escribir algo como lo siguiente, el resultado que sale de esto son tres líneas separadas que no es exactamente lo que esperábamos. Cada ejecución de print agrega sin que le digamos nada un cambio de línea al final, pero también podemos decirle que escriba varios valores en la misma línea, de esta manera. Separamos mediante una coma cada una de las expresiones o valores que queremos escribir. Podemos agregar todas las que queramos y print las escribirá todas en la misma línea como vemos aquí y separadas cada una por un espacio. Finalmente un par de trucos que Python nos permite hacer para que print haga exactamente lo que queremos. ¿Qué pasa si ahora no quiero que haya una línea después de lo que escribo al final de cada print? Podemos agregar una asignación dentro de print que le asigne un string a una variable, o una variable que tenga el nombre end. Esta variable sirve para decirle a print, mira, quiero que al final de escribir lo que te dije, agregues este string que está al lado de end. Entonces, ¿qué le estamos diciendo? Que después de escribir el texto soy Cristian no queremos que cambie de línea, sino que escriba un string que contiene un espacio en blanco, y obtenemos este resultado. Notemos que este cambio es válido únicamente para el print que está aquí en la línea 3. Si no decimos nada, como en las líneas 4 y 5 que no escribimos nada adicional, print se comporta de manera normal y agrega un cambio de línea después de escribir lo que le dijimos que escribiera. Y este mismo truco lo podemos usar para agregar el string que queramos al final de cada ejecución de print, como podemos ver en este ejemplo en que agregamos un texto distinto al final de cada línea de print. [AUDIO EN BLANCO] Y ahora déjenme que les enseñe otro truco más. Si nos fijamos aquí en esta ejecución en que escribimos tres expresiones, print parece que es lo bastante inteligente para agregar siempre un espacio en blanco automáticamente entre msj1, entre temp, y entre msj2. Pero tal vez no queremos siempre que haya un espacio. Podemos decirle a print que el separador de cada expresión utilice un string distinto, y se lo decimos a través de una variable que se llame sep. Como en este ejemplo, en que le estamos diciendo, mira entre medio de cada expresión que tú vas a escribir, agrega este string que está al lado de sep. Y obtenemos este resultado donde string compuesto por tres puntos aparece entre medio de cada expresión que le pasamos a print. Entonces, en esta lección, lo que hemos visto es cómo utilizar print para escribir en pantalla los valores de expresiones dentro de un programa, escribiéndolos de esta manera, print y entre paréntesis una expresión. Vimos que podemos escribir no solamente una sino que también varias expresiones simultáneamente y que Python nos permite modificar lo que se escribe al final de cada línea y también lo que se escribe entre medio de cada una de las expresiones. Entonces ahora que you sabemos cómo escribir en pantalla lo que queramos, vamos a ir haciendo programas que se van a hacer muchos más interesantes y más agradables para el usuario. [AUDIO EN BLANCO]