En este post vamos a manejar ficheros csv y xls. Este tipo de ficheros son muy usados actualmente para almacenar información. A continuación, aprenderemos ha leer y escribir archivos de este tipo con Python de una forma sencilla.
Archivos CSV
Vamos a empezar por los archivos con extensión CSV del inglés comma-separated values. Estos archivos son un clásico a la hora de representar datos en forma de tabla.
En primer lugar vamos a hacerlo sin usar ningún módulo adicional, esta es la forma más tediosa cuando queremos leer muchos datos.
El código anterior lee el archivo fh2.csv
línea a línea y lo muestra por
pantalla.
Y la salida del programa anterior es la siguiente:
La forma más habitual de hacer este tipo de lecturas con el módulo csv.
Es muy sencillo:
Este código realiza la misma tarea que el anterior, la salida vuelve a ser:
Es posible cambiar el tipo de separador (o delimitador) a ; , de la siguiente forma:
Para facilitar la entrada y salida de datos podemos usar los dialect. Los dialect son clases predefinidas la más habital es excel. Para hacer uso de ella solo tenemos que hacer lo siguiente:
Por útlimo vamos a crear un nuevo archivo y a escribir en él.
Lo haremos de la siguiente forma:
Cómo podemos ver se ha creado un archivo fh.csv y se ha escrito una línea que contiene en la primera columna un
10
y en la segunda un A
.
Archivos XLS
Si queremos leer archivos de tipo xls, que es el formato de Excel (junto s xlsx) podemos instalar las libreriás xlrd y xlwt.
Para instalar los módulos que vamos a usar:
En este ejemplo crearemos el archivo y después lo leeremos.
Creamos nuestro archivo de datos:
El código anterior creará un archivo con el nombre datos.xls. Este archivo tendrá dos columnas con los datos de las listas que se definen en el código.
Ahora procedemos a leer el archivo. Esto es muy sencillo con la librería xlwr. Primero importamos y leemos el arhivo.
Ahora podemos llamar ha funciones como las siguientes:
El resultado de la ejecución de las ordenes anteriores sobre el archivo datos.xls, creado anteriormente, es el siguiente:
Para más documentación visitar la página oficial de CSV y xlwr/xlrd