Leggi, scrivi e formatta fogli di calcolo Excel in automatico con openpyxl.
openpyxl è una libreria Python per leggere e scrivere file Excel (.xlsx) senza bisogno di avere Excel installato o aperto. Puoi generare report, aggiornare fogli esistenti, applicare formule e formattazioni, tutto via codice.
from openpyxl import Workbook wb = Workbook() foglio = wb.active foglio["A1"] = "Nome" foglio["B1"] = "Voto" foglio["A2"] = "Anna" foglio["B2"] = 8 wb.save("voti.xlsx")
Un Workbook è l'intero file Excel; ogni Workbook contiene uno o più Worksheet (fogli). wb.active restituisce il foglio attivo, ma puoi anche crearne di nuovi con nomi personalizzati.
Puoi accedere a una cella tramite il suo riferimento (es. "A1") oppure tramite riga e colonna numeriche con .cell(row, column).
Il modo più comune di popolare un foglio è tramite un ciclo, spesso iterando su una lista di dati o un DataFrame Pandas.
openpyxl permette di formattare celle: grassetto, colore di sfondo, larghezza colonne, tutto tramite oggetti dedicati come Font e PatternFill.
Con load_workbook() puoi aprire un file .xlsx esistente per leggerne o modificarne i dati, senza doverlo ricreare da zero.
Spunta ogni passaggio man mano che lo completi: sbloccherai l'attestato di questa guida al termine.
Esempio per il punto 1
from openpyxl import Workbook wb = Workbook() foglio = wb.active foglio["A1"] = "Nome" foglio["B1"] = "Voto" wb.save("voti.xlsx")
Esempio per il punto 2
dati = [("Anna", 8), ("Luca", 6), ("Sara", 9)] for riga, (nome, voto) in enumerate(dati, start=2): foglio.cell(row=riga, column=1, value=nome) foglio.cell(row=riga, column=2, value=voto) wb.save("voti.xlsx")
Esempio per il punto 3
from openpyxl.styles import Font foglio["A1"].font = Font(bold=True, size=12) foglio["B1"].font = Font(bold=True, size=12) wb.save("voti.xlsx")
Esempio per il punto 4
from openpyxl import load_workbook wb_letto = load_workbook("voti.xlsx") foglio_letto = wb_letto.active print(foglio_letto["A2"].value) # Anna
Tocca ogni termine per vederne la definizione.
Crea un file Excel con intestazioni "Nome" e "Voto", poi popola 6 righe di dati con un ciclo for. Formatta le intestazioni in grassetto.
Ricarica il file dell'esercizio 1 con load_workbook(), aggiungi una nuova riga di dati in fondo, e risalva il file.
Questo codice scrive nella cella sbagliata: si voleva scrivere in "B2" ma è stato scritto foglio["B20"] = 8. Spiega come individuare e correggere questo tipo di errore di battitura.
Completa tutti i 5 passaggi della checklist per sbloccare il tuo attestato in PDF.