Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa |
tutorial_de_python [2022/11/19 21:53] – [6. Entrada/Salida] peron | tutorial_de_python [2022/11/19 22:22] (actual) – [Tutorial de Python] peron |
---|
======Tutorial de Python====== | ======Tutorial de Python====== |
¡Buenvenid@ al curso de Python de ~sdemingo! | ¡Buenvenid@ la introducción de programación en Python de ~sdemingo! |
| |
**Python** es un lenguaje de programación de alto nivel cuya filosofía hace hincapié en la legibilidad de su código fuente. Es sencillo de aprender por lo que es ideal para aprender a programar en un [[pubnix]]. | **Python** es un lenguaje de programación de alto nivel cuya filosofía hace hincapié en la legibilidad de su código fuente. Es sencillo de aprender por lo que es ideal para aprender a programar en un [[pubnix]]. |
=====Introducción===== | =====Introducción===== |
| |
Un //programa// no es más que un conjunto de instrucciones que el ordenador ejecutará de forma secuencial, desde la primera a la última. | Un //programa// no es más que un **conjunto de instrucciones secuenciales**, que el ordenador ejecutará, desde la primera a la última. |
| |
Para escribir programas la herramienta básica es [[editores_de_texto|un editor de texto]], donde podrás escribir las instrucciones que quieres que formen parte de tu programa. Tu programa, además de instrucciones manejará también datos, que podrán ser datos internos del propio programa o bien introducidos por el usuario. | Para escribir programas la herramienta básica es un [[editores_de_texto|editor de texto]], donde podrás escribir las instrucciones que quieres que formen parte de tu programa. Tu programa, además de //instrucciones// manejará también //datos//, que podrán ser datos internos del propio programa o bien introducidos por el usuario. |
| |
**Python** es un lenguaje de programación //interpretado//. Esto quiere decir que el programa que tu escribirás en un fichero de texto no será compilado por ningún programa externo sino que será leído y procesado por un intérprete de Python. Para que el sistema ejecute las instrucciones de tu programa no vale con indicarle que quieres ejecutarlo. A quien realmente ejecutas es al intérprete de Python, y es a el, a quien le dices que lea tu programa. | **Python** es un lenguaje de programación //interpretado//. Esto quiere decir que el programa que tu escribirás en un fichero de texto no será compilado por ningún programa externo sino que será leído y procesado por un intérprete de Python. Para que el sistema ejecute las instrucciones de tu programa no vale con indicarle que quieres ejecutarlo. A quien realmente ejecutas es al intérprete de Python, y es a el, a quien le dices que lea tu programa. |
===== 6. Entrada/Salida ===== | ===== 6. Entrada/Salida ===== |
| |
Las funciones y operaciones que se agrupan dentro de este capítulo son las que nos permitirán meter datos a nuestros programas y sacar datos de estos. Ya conocemos dos de estas funciones: ''input'' y ''print''. | Las funciones y operaciones que se agrupan dentro de este capítulo son las que nos permitirán adjuntar datos a nuestros programas y extraer datos de ellos. Ya conocemos dos de estas funciones: ''input'' y ''print''. Vamos ahora a conocer formas para **leer y escribir información en ficheros** . |
| |
Vamos ahora a conocer formas para leer y escribir información en ficheros del sistema. Algo que puede sernos muy útil para conseguir que nuestros programas tengan información perdurable sobre el sistema de ficheros. | >Estas funciones puede sernos muy útil para conseguir que nuestros programas tengan información perdurable sobre el sistema de ficheros. |
| |
Antes de trabajar con ficheros hemos de conocer dos instrucciones que debemos utilizar, antes de empezar a usarlos y tras terminar de utilizar estos: | antes de empezar a usar los ficheros y luego de terminar de utilizarlos debemos utilizar las funciones de apertura y de cierre de los mismos. |
| |
* ''open()'': Indica al sistema operativo que quieres utilizar un fichero y de que manera vas a utilizarlo: si vas a leerlo, a escribirlo, etc. | * ''open()'': Indica al sistema operativo que quieres abrir un fichero para leerlo, a escribirlo, etc. |
* ''close()'': Indica al sistema que quieres dejar de utilizar un fichero. | * ''close()'': Una vez finalizado el trabajo de archivaje, indica al sistema que quieres dejar de utilizar el fichero, y que lo cierre. |
| |
La función ''open'' nos devuelve una variable de tipo ''File'' que nos ayudará a manejar el fichero. Esta variable u objeto guarda en su interior la última posición leída u escrita. Para invocar correctamente ''open'' necesitamos, al menos, dos argumentos: uno es la ruta del fichero sobre el sistema (relativa a donde estamos situados o absoluta desde la raíz del sistema) y dos es el modo en el que vamos a trabajar. Hemos de seleccionar uno de los siguientes modos: | La función ''open'' nos devuelve una //variable de tipo// ''File'' que nos ayudará a manejar el fichero. Esta variable u objeto registra la última posición leída u escrita. Para invocar correctamente ''open'' necesitamos al menos dos argumentos: la //ruta del fichero sobre el sistema// (relativa al directorio donde estamos situados o absoluta desde la raíz del sistema) y el //modo de trabajo//. Hemos de seleccionar uno de los siguientes modos de trabajo: |
| |
* ''r'': Abrir el fichero para leerlo. | | **Modo de Trabajo ** | **Resultado** | |
* ''w'': Abrir el fichero para escribirlo. Si este existe, su contenido anterior será eliminado y sino existe, se creará. | | ''r'' | Abre el fichero para leerlo. | |
* ''a'': Abrir el fichero para escribirlo pero añadiendo el contenido a lo que ya teníamos en su interior. | | ''w'' | Abre el fichero para escribirlo. Si este existe, su contenido anterior será eliminado y sino existe, se creará. | |
* ''+'': Abrir el fichero para leerlo y para escribirlo simultáneamente. | | ''a'' | Abre el fichero para escribirlo pero añadiendo el contenido a lo que ya teníamos en su interior. | |
| | ''+'' | Abre el fichero para leerlo y para escribirlo simultáneamente. | |
| |
===Leer de ficheros === | ===Leer de ficheros === |
| |
Para leer un fichero con Python debemos primero indicar al sistema nuestra intención para luego proceder a leerlo. Una vez lo hayamos abierto, sobre el fichero podemos realizar diferentes operaciones de lectura. A continuación listo las más comunes: | Para leer un fichero con Python debemos primero indicar al sistema nuestra intención para luego proceder a leerlo. Una vez lo hayamos abierto, sobre el fichero podemos realizar diferentes **operaciones de lectura**. A continuación listo las más comunes: |
| |
* ''read(n)'': Lee del fichero //n bytes// y retorna esos bytes como una cadena. Si omites este valor provocas que retorne todo el contenido del fichero en un solo string. | | ''read(n)'' | Lee //n bytes// del fichero y devuelve esos bytes como una cadena. Si omites este valor provocas te devolverá __todo el contenido del fichero como una sola cadena__. | |
* readline(): Lee una sola línea del fichero. | | ''readline()'' | Lee una sola línea del fichero. | |
* readlines(): Lee toda las líneas del fichero y las retorna como una | | ''readlines()'' | Lee toda las líneas del fichero y las devuelve como una //lista de cadenas//, donde cada línea opera como miembro de esta lista de cadenas. | |
lista de string, donde cada miembro de esta lista es una de estas | |
líneas. | |
| |
Veamos dos ejemplos. En este primero leeremos todo el fichero de golpe guardándolo en una sola cadena: | Veamos dos ejemplos. En este primero leeremos todo el fichero de golpe guardándolo en una sola cadena: |
===Escribir en ficheros === | ===Escribir en ficheros === |
| |
Para escribir un fichero, las operaciones previas son similares a la lectura. Necesitamos ejecutar open con el modo adecuado. Una vez hecho esto podemos elegir dos funciones para escribir en el: | Para escribir un fichero, las operaciones previas son similares a las de lectura. Necesitamos ejecutar ''open'' con el modo adecuado. Una vez hecho esto podremos elegir dos funciones para escribir en el: |
| |
* ''write(text)'': Escribe el string sobre el fichero. | | ''write(text)'' | Escribe el string sobre el fichero. | |
* ''writelines(list)'': Escribe en el fichero una lista de cadenas. | | ''writelines(list)'' | Escribe en el fichero una lista de cadenas. | |
| |
Si queremos escribir manualmente un salto del línea para separar dos líneas hemos de escribir el caracter ''\n''. Veamos un ejemplo: | Si queremos escribir manualmente un salto del línea para separar dos líneas entre sí hemos de escribir el carácter ''\n''. Veamos un ejemplo: |
| |
<code python> | <code python> |