Home > python > Python: leggere file Excel con XLRD

Python: leggere file Excel con XLRD

Traendo spunto da questa utilissima guida:

Ho un file excel prova.xls:

con xlrd è possibile da python, leggerne il contenuto.

Per “aprire” il file:

MyFile = xlrd.open_workbook(r'C:\tmp\prova.xls')

per elencare i fogli presenti all’interno del workbook:

MyFile.sheet_names()

risultato:

>>> MyFile.sheet_names()
[u'Foglio1', u'Foglio2']

Il foglio dal quale attingere i dati, posso ottenerlo n 2 modi,
tramite ID, o tramite nome:
Tramite ID

MyFile.sheet_by_index(0)

Tramite Nome, che ottengo direttamente con MyFile.sheet_names(ID)
Nel caso del primo foglio:

MyFile.sheet_by_name(MySheets[0])

E’ possibile conoscere il numero di righe (non vuote) del file:

MySheet_name.nrows

Per stampare i valori presenti in ogni riga:

for row in range(MySheet_name.nrows):
    print MySheet_name.row_values(row)

risultato:

>>> for row in range(MySheet_name.nrows):
    print MySheet_name.row_values(row)

[u'pippo', 1234.0]
[u'pluto', 5678.0]
[u'paperino', '']

Il fatto che la colonna 2 sia comunque utilizzata, dalle
prime 2 righe, comporta la presenza nella lista della
riga 3, di un valore ”, in posizione 1.

Per stampare i valori presenti nella prima colonna:

MySheet_name.col_values(0)

risultato:

>>> MySheet_name.col_values(0)
[u'pippo', u'pluto', u'paperino']

nella seconda colonna

MySheet_name.col_values(1)

Per leggere i valori di una singola cella invece, si
utilizzano le coordinate della stessa, partendo da 0.
La Cella A-1 avrà quindi coord. (0,0)

MySheet_name.cell(0,0).value

risultato:

>>> MySheet_name.cell(0,0).value
u'pippo'

La cella B2, di conseguenza:

MySheet_name.cell(1,1).value


Scrivere su file Excel con XLWT

Categorie:python Tag:
  1. Non c'è ancora nessun commento.
  1. agosto 5, 2010 alle 12:30 pm

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: