Cargando



Python - Archivos

En este tutorial veremos como trabajar de forma básica con los archivos y conocer el soporte que tiene Python para esto.


oct 28 2013 22:43
Avanzado
oct 28 2013 23:39
La interacción de un programa es más que actuar con los valores que se puedan recibir de un usuario, en Python ya sabemos que los elementos básicos de esta interacción son el input, raw_input, print, los dos primeros requieren de un usuario que ingrese los datos, sin embargo llegan momentos en los cuales debemos trabajar con elementos almacenados con anterioridad, aquí es donde entra el trabajo con los archivos, el cómo trabajar con datos que ya han sido almacenados, tal vez generados por otros programas en otros lenguajes, las posibilidades solo las limitan nuestra mente y nuestras necesidades.

Abrir Archivos

Para abrir un archivo debemos tener presente que esta es la sintaxis necesaria, veamos una imagen descriptiva antes de continuar:

python_archivos.jpg


Aquí podemos ver los parámetros que recibe la instrucción open y el orden en que deben ir.

Asumiendo que hemos creado un archivo de texto plano veamos como lo podemos abrir dentro de Python:

>>> f = open(r'C:\text\somefile.txt')

Si el archivo no existe recibiremos una excepción como la siguiente:

Traceback (most recent call last):
File "<pyshell#0>", line 1, in ?
IOError: [Errno 2] No such file or directory: "C:\\text\\somefile.txt"

Notamos que es bastante sencillo esto, veamos cuales son las opciones que tenemos disponibles para utilizar como parámetros del método open:

'r' Modo de lectura
'w' Modo de escritura
'a' Modo de añadidura
'b' Modo Binario, debe ser añadido a otro modo
'+' Modo Lectura/Escritura, debe ser añadido a otro modo.

Leyendo y escribiendo a un archivo

Ya que conocemos lo más básico de la sintaxis vamos a hacer unos pequeños ejemplos para ir entendiendo y conociendo el manejo de los archivos en Python. Si tenemos un objeto de tipo file podemos utilizar los métodos directamente contra este como podemos observar:

>>> f = open('somefile.txt', 'w')
>>> f.write('Hello, ')
>>> f.write('World!')
>>> f.close()

En este ejemplo abrimos un archivo para escritura utilizamos el argumento 'w', luego el objeto f utiliza los diferentes métodos disponibles como write con el cual escribimos en el texto, al utilizarlo la segunda vez vemos que agrega el texto donde había finalizado el anterior, por último con close cerramos el archivo.

El método close toma importancia ya que es el que nos garantiza que todo lo que hayamos realizado quedará en el archivo, ya que al no cerrarlo no tenemos la seguridad ya que Python pudiera estar haciendo buffering del contenido por razones de rendimiento y si el programa se cierra o hay un problema pudiésemos perder los datos, por ello es importante cerrar el archivo tan pronto como hayamos terminado con él.

Ahora vamos a abrir nuestro archivo para lectura, veamos inicialmente el código y luego describimos
que realizamos:

>>> f = open('somefile.txt', 'r')
>>> f.read(4)
'Hell'
>>> f.read()
'o, World!'


Notamos como utilizamos el parámetro 'r' sin embargo si no lo especificamos también se abriría en este modo ya que el modo lectura es el modo por defecto cuando utilizamos el método open, luego al leer con el método read le pasamos un número que es la cantidad de caracteres que vamos a obtener del archivo, al igual que con el modo write si volvemos a llamar al método continuaremos donde lo habíamos dejado anteriormente.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X