Generación de documentos Excel con Python y Openpyxl en IOTeca

Generación de documentos Excel con Python y Openpyxl

Openpyxl es una biblioteca de Python que permite leer y escribir doscumentos Excel 2010 xlsx/xlsm/xltx/xltm.

En este artículo veremos como crear e ingresar datos en un hoja de cálculo.

Para instalar la biblioteca en la consola utilizaremos el siguiente comando:

pip install openpyxl

Hojas

En nuestro primer ejemplo veremos como trabajar con las hojas.

#importación de la biblioteca
import openpyxl

#instanciación de un nuevo libro
libro = openpyxl.Workbook()

#posicionamientoen la hoja activa
hoja = libro.active

#la hoja creada por defecto se llama Sheet, cambio de su nombre
hoja.title = "Inicial"

#creación de una nueva hoja al final indicando su nombre
hoja= libro.create_sheet(title="Hoja_al_final")

#creación de una nueva hoja al principio, no es necesato llamar title al parámetro
hoja= libro.create_sheet("Hoja_al_principio", 0)

#creación de una nueva hoja en la posición 1
hoja=libro.create_sheet(index=1, title="Hoja en posición1")

#guardado de los cambión y creación del libro
libro.save("hojas.xlsx")

Celdas

En los siguientes ejemplos veremos como trabajar con las celdas de una hoja.

import openpyxl
libro = openpyxl.Workbook()
hoja = libro.active
#Asignación de contenido de la celda mediante coordenada letra-número
hoja["A1"] = 1000
celda_a1 = hoja["A1"]
print(celda_a1.value)
#Asignación mediante argumentos fila, columna y value
b1 = hoja.cell(row=1, column=2, value=2000)
print(b1.value)
#Asignación mediante fila y columna, y actualizando luego la propiedad value
c1 = hoja.cell(row=1, column=3)
c1.value = 3000
print(c1.value)
libro.save("celdas.xlsx")

Colecciones

En nuestro siguiente ejemplo veremos como insertar una lista con dispositivos para computación.

#Lista o tupla
productos = [
    (1, 'Pendrive', 1500.00),
    (2, 'Auricular', 950.50),
    (3, 'Teclado', 2000.00),
    (4, 'Mouse', 856.30)
]
import openpyxl
libro = openpyxl.Workbook()
hoja = libro.active
hoja.title = "Articulos"
# Inserción de tupla con encabezados de los campos
hoja.append(('ID', 'Artículo','Precio'))
for producto in productos:
    # producto es una tupla con los valores de un producto 
    hoja.append(producto)
libro.save("colecciones.xlsx")


Este y otros contenidos los podés aprender en el Curso de Python

Creado: 17/07/2020  

Publicidad

| Volver a Python |

Comentarios

Para poder comentar debés registrarte e ingresar al sitio.