Lectura de Archivos Excel con xlrd en Python

Lectura de Archivos Excel con xlrd en Python

Python es un lenguaje de programación versátil que se puede utilizar para una amplia gama de tareas, incluyendo la lectura de archivos Excel. La biblioteca xlrd proporciona una API para leer archivos XLS y XLSX de Microsoft Excel.

Instalación

La biblioteca xlrd está disponible en el repositorio de paquetes de Python. Para instalarla, abre una terminal y ejecuta el siguiente comando:

pip install xlrd

Lectura de un archivo Excel

Para leer un archivo Excel con xlrd, primero debemos abrir el archivo utilizando el método open_workbook(). Este método devuelve un objeto Workbook que representa el libro de trabajo de Excel.

Python
import xlrd

# Abre el archivo Excel
workbook = xlrd.open_workbook("archivo.xlsx")

Una vez que tenemos el objeto Workbook, podemos obtener la lista de hojas de trabajo utilizando el método sheet_names().

Python
# Obtiene la lista de hojas de trabajo
hojas = workbook.sheet_names()

# Imprime la lista de hojas de trabajo
print(hojas)

Para leer los datos de una hoja de trabajo, podemos utilizar el método sheet_by_name() para obtener un objeto Worksheet que representa la hoja de trabajo.

Python
# Obtiene la hoja de trabajo "Hoja1"
hoja = workbook.sheet_by_name("Hoja1")

# Imprime el número de filas y columnas de la hoja de trabajo
print(hoja.nrows, hoja.ncols)

Para leer los datos de una celda, podemos utilizar el método cell_value().

Python
# Imprime el valor de la celda (1, 1)
print(hoja.cell_value(1, 1))

Ejemplo

El siguiente ejemplo muestra cómo leer un archivo Excel con xlrd:

Python
import xlrd

# Abre el archivo Excel
workbook = xlrd.open_workbook("archivo.xlsx")

# Obtiene la hoja de trabajo "Hoja1"
hoja = workbook.sheet_by_name("Hoja1")

# Imprime el número de filas y columnas de la hoja de trabajo
print(hoja.nrows, hoja.ncols)

# Imprime los datos de la hoja de trabajo
for fila in range(hoja.nrows):
    for columna in range(hoja.ncols):
        print(hoja.cell_value(fila, columna), end=" ")
    print()

Este código imprime la siguiente salida:

10 2
1 2
3 4
5 6
7 8
9 10

Más información

Para obtener más información sobre la biblioteca xlrd, consulta la documentación oficial: https://xlrd.readthedocs.io/en/latest/.

Otros métodos

La biblioteca xlrd proporciona otros métodos para leer archivos Excel, como:

  • row_values(): Devuelve una lista con los valores de una fila.
  • column_values(): Devuelve una lista con los valores de una columna.
  • range_values(): Devuelve una lista con los valores de un rango de celdas.

Estos métodos pueden ser útiles para leer datos de archivos Excel de forma más eficiente.