Hablemos del archivo I oh, qué quiero decir, lo verás mucho en la programación.
IO significa entrada salida.
Verá, la mayoría de las veces las máquinas no se comunican en un solo entorno, por ejemplo, hasta ahora
hemos estado escribiendo nuestro código en, digamos, un editor como texto sublime que tengo aquí o PAE Charm
o un Reppel en línea.
Pero, por lo general, desea interactuar con diferentes partes del sistema.
Quizás quieras hablar con otro sitio web.
Tal vez desee hablar con algo que está en su escritorio, tal vez un archivo, tal vez dos máquinas diferentes se
estén comunicando entre sí.
Quizás estés hablando con una base de datos.
Simplemente quiero decir, oye, quiero que ingreses algo del mundo exterior y envíes algo al mundo
exterior.
Y una de las formas más comunes en que usamos cosas como IO es a través de la lectura de
archivos, podrías pensar en Python y cómo no sería bueno si tal vez pudiéramos escribir un script que comprima
imágenes mientras necesitamos IO, entonces necesito hacerlo. ingrese una imagen y luego necesito actualizar el archivo comprimido.
Imagen.
Tal vez quiera trabajar con un archivo PDF y tal vez agregar una marca de agua a todas mis páginas PDF.
Bueno, entonces ingresamos un PDF y generamos una nueva versión de un PDF.
Así que esta es una tarea muy común de la que vemos mucho.
Y leer y escribir archivos es una herramienta muy importante en nuestro cinturón de herramientas.
Y, por cierto, tenemos un proyecto en camino en el que realmente vamos a usar esto con PDF.
Pero por ahora, ¿cómo podemos hacer esta salida de entrada de archivo con Python?
Bueno, Python tiene una función incorporada que nos permite abrir y escribir archivos.
Y simplemente se llama abierto, agradable y fácil, por lo que con abrir, podemos hacer algo como esto, puedo crear un archivo
de texto de muestra en nuestro escritorio, así que voy a usar mi terminal aquí.
Entonces, si miramos el directorio de trabajo actual, estoy en un escritorio, si estás en Windows, entonces es posible
que tengas que hacer algunos comandos diferentes aquí.
Pero a estas alturas, debería estar bastante familiarizado con que puede crear un archivo si así lo desea.
Ahora, puedo hacer esto manualmente o en mi terminal.
De hecho, puedo hacer.
Si está en una Mac, puede tocar y luego diré texto de punto de prueba.
Entonces, si hago otra cosa aquí, verá que tengo un archivo de texto de prueba y un script antes.
Y nuevamente, solo para verificar, si voy a mi escritorio.
Sí, tengo estos dos aquí, perfectos ahora aquí, simplemente podemos decir en nuestro archivo de script.
Abierto.
Y el nombre del archivo en nuestro caso, es la prueba de la fibra del corazón, texto de puntos así.
Ahora, puedo asignar esto a una variable, llamándola mi archivo.
Y ahora tenemos, bueno, el objeto de archivo, así que veamos esto si lo hago aquí, imprima mi archivo.
Veamos qué pasa.
Voy a ejecutar mi código.
Entonces, digamos Python tres y luego ejecute el script.
Está bien.
Obtengo un objeto, una envoltura textil, obtengo el nombre, que es el texto que me cortan, que todavía no estoy seguro de
qué es, aprenderemos y luego codificaremos, que es cómo se codifica este archivo, que es UTF ocho.
La mayoría de los archivos suelen estar codificados en UTF ocho.
Muy bien, entonces, ¿cómo puedo leer este archivo?
Todo lo que tenemos que hacer es que mi archivo tenga un punto.
Lea el método para que si lo ejecuto ahora.
Bueno, tengo un espacio en blanco porque no hay nada en este texto de prueba, así que escribamos algo.
Abriré este archivo y texto sublime y solo escribiré: Hola, mi nombre es Andre Agassi.
Me volví muy, muy creativo con este.
Buen trabajo.
Muy bien, regresemos.
Así que ahora si leo este archivo.
Mira eso, puedo leer hola, mi nombre es Andre, y ya está.
He leído mi archivo.
Bonito y fácil.
Ahora, si ejecuto esto de nuevo, simplemente.
Lea esto varias veces.
Si hago clic, corre.
Puedo leer la primera vez, pero estas dos veces no leo nada.
¿Porqué es eso?
Bueno, esta función abierta tiene la idea de un cursor.
Es decir, solo puede leer el archivo una vez.
Y una vez que lo abres, devuelve un objeto de archivo.
Y el contenido del archivo que puede leer y el contenido del archivo se leen con un cursor tal como lo
ve aquí uno por uno y se imprimen en la pantalla.
Pero al final de esta primera lectura, el cursor estará al final del archivo.
Así que ahora, cuando intente leer, será el final del archivo y no quedará nada allí.
Entonces, la forma en que solucionamos esto es haciendo algo como esto.
Simplemente decimos mi archivo dot seke, que mueve nuestro cursor a cualquier índice que queramos en nuestro caso, buscar cero.
Entonces, si ejecuto esto ahora, ahí lo tienes.
Y si muevo el cursor hacia atrás.
Y guardo y ejecuto esto.
De acuerdo, eso está mucho mejor ahora.
Y esto es solo para demostrar que Python usa esta idea de cursor para leer un archivo.
Ahora, otra cosa única que puedo hacer es leer la línea.
Así que si ejecuto esto.
Lee la línea, pero digamos que nuestro archivo de texto tiene diferentes líneas, entonces, ¿cómo estás?
Digamos una carita sonriente aquí, si ahora leo la línea.
Recibo hola, mi nombre es Andre, si leo la línea de nuevo, hola, mi nombre es Andre porque recibo cada línea.
Solo obtengo la primera línea si imprimo esto varias veces.
Y ejecuto esto.
Está bien, eso es mejor que entiendo.
Hola, mi nombre es Andre Smiley Face.
¿Cómo estás?
Una vez más, el cursor sigue moviéndose, a la derecha, así que puedo seguir leyendo las líneas.
Otra cosa que puedo hacer es simplemente decir leer líneas si ejecuto esto.
Recibo una lista que contiene el archivo completo, lee todas las líneas y ves aquí que tengo hola, mi
nombre es Andre Nagui.
Tengo una nueva línea aquí, una carita sonriente, una nueva línea.
Recuerde, esto es secuenciación de escape.
Y luego como estas
Y no hay nueva línea aquí porque no hay nueva línea.
Es el final del archivo.
Entonces, estos son extremadamente útiles, tal vez podamos usar expresiones regulares para buscar un fragmento de texto en un archivo que
sea bastante útil, ¿verdad?
Ahora, lo último que tenemos que hacer, y esto es un poco molesto, les mostraré cómo no es necesario que lo
hagamos en el futuro.
Pero en realidad debe cerrar manualmente el archivo después de haberlo abierto con open.
Así que puede usarlo en otro lugar y el programa es un buen estándar, así que lo que tiene que hacer es cerrar
el punto de mi archivo una vez que haya terminado con él.
Dile a tu computadora, hey.
Tienes que dejar de hacer lo que estés haciendo, ya no me interesa el otoño, hemos terminado.
Puedes usarlo en otro lugar.
Por lo general, hacemos algo como esto y terminamos.
Tomemos un descanso y aprendamos un poco más en el siguiente video.