PyExcel
Libreria Python open source per fogli di calcolo
Leggi, crea, unisci e filtra i dati in file CSV, ODS, XLS, XLSX e XLSM tramite l'API Python.
PyExcel è una singola API Python open source che supporta il lavoro con diversi formati di fogli di calcolo popolari. Consente ai programmatori di software di leggere, manipolare e scrivere dati nei formati di file CSV, ODS, XLS, XLSX e XLSM. L'API si è concentrata molto sui dati piuttosto che sui formati di file. La libreria aiuta gli sviluppatori web a gestire la maggior parte dei formati di file excel fornendo un'interfaccia di programmazione comune.
È molto facile ottenere o esportare dati da file MS Excel. Per lo più richiede un codice one-liner per ottenere dati dai file excel. C'è solo un'API per leggere e scrivere dati in vari formati di file excel. Diverse importanti funzionalità sono completamente supportate dall'API, come la lettura e l'aggiornamento dei dati in un foglio di calcolo, l'unione di tutti i file excel in un'unica directory, la divisione della cartella di lavoro, l'estrazione di fogli da una cartella di lavoro, l'unione di righe e celle, lo stile delle colonne, l'aggiunta o la rimozione di una colonna da un foglio, filtraggio dati e molto altro. L'API fornisce un elenco di formati di file supportati da plug-in esterni. Puoi usare pip per aggiungere o rimuovere un plugin.
Guida introduttiva a PyExcel
Prima di tutto, devi avere Python 2.6 o successivo installato sul tuo sistema. Il modo consigliato per l'installazione è tramite pip. Si prega di utilizzare il seguente comando.
Installa PyExcel tramite il comando PIP
pip install pyexcel
API Python per lavorare con fogli di calcolo Excel
L'API PyExcel consente agli sviluppatori di software di accedere, leggere, scrivere e manipolare i dati in vari formati Excel come CSV, ODS, XLS, XLSX e XLSM. È molto facile importare o esportare dati da file Excel utilizzando l'API PyExcel. Supporta l'aggiunta di una nuova riga a un file esistente, l'aggiornamento di una riga in un file esistente, l'aggiunta o l'aggiornamento della colonna a un file esistente, l'unione o la divisione di fogli, la ricerca di dati, la conversione di file Excel in altri formati e molto altro.
Aggiungi nuova riga al file di foglio elettronico esistente via Python API
import pyexcel as pe
sheet = pe.get_sheet(file_name="example.xls")
sheet.row += [12, 11, 10]
sheet.save_as("new_example.xls")
pe.get_sheet(file_name="new_example.xls")
Unisci e dividi un foglio di lavoro Excel
L'API PyExcel offre agli sviluppatori la possibilità di unire i file sparsi in una directory in un'unica cartella di lavoro di Excel. Ogni file diventerà un foglio all'interno di una cartella di lavoro. Fornisce inoltre funzionalità per la miscelazione e la corrispondenza con altri formati Excel come XLS, CSV, XLSM e ODS. Ti facilita anche la divisione di una cartella di lavoro in più file. Supponiamo di avere un libro contenente diversi fogli di lavoro, utilizzando la libreria PyExcel open source puoi separarli in un unico file excel di foglio.
Merge o Split Excel Files via Python API
//merge two files into one file
from pyexcel.cookbook import merge_two_files
merge_two_files("example.csv", "example.xls", "output.xls")
//Split a workbook into single sheet files
from pyexcel.cookbook import split_a_book
split_a_book("megabook.xls", "output.xls")
import glob
outputfiles = glob.glob("*_output.xls")
for file in sorted(outputfiles):
print(file)
Filtraggio dei dati nei fogli di calcolo
L'API PyExcel fornisce funzionalità agli sviluppatori per filtrare i dati in base alle proprie esigenze. Supponiamo che tu abbia una grande quantità di dati e desideri filtrarne alcuni. Usando l'API puoi farlo facilmente. Supporta anche il filtraggio di righe o colonne vuote da un foglio. Puoi anche salvare i dati del filtro in un altro file.
Come filtrare Ross vuoto da Excel Sheet all'interno di applicazioni Python
import pyexcel as pe
sheet = pe.Sheet([[1,2,3],['','',''],['','',''],[1,2,3]])
//define filter
def filter_row(row_index, row):
result = [element for element in row if element != '']
return len(result)==0
// Apply filter
del sheet.row[filter_row]