Buondì a tutti.
Python 3, programma da console, niente interfaccia.

Una cosa molto semplice.
Devo creare un parser che legga un file piuttosto grosso che contiene, in formato testo, dei dati già strutturati in una certa maniera. Diciamo che so la combinazione di caratteri con cui inizia la riga con cui parte il dato e so come si conclude l'ultima riga che lo compone. Devo prendere il testo fra questi estremi, elaborarlo e piazzarlo in una struttura più facilmente leggibile ed interrogabile.

La struttura scelta è una lista di tuple. La lista fa da indice e mi permette di rimuovere ed aggiungere record con facilità. Le tuple sono tuple perchè non ho necessità di cambiare il loro contenuto ma di leggerlo soltanto accedendovi grazie agli indici.

Il problema è che i vari campi dei dati, nel file di testo, non hanno un ordine preciso. So dove iniziano e finiscono i blocchi dei dati, ma all'interno del singolo blocco, non v'è ordine.

E' come se avessi:

<Cliente>
nome: xxx, cognome: yyy, data: zzz
</Cliente>

Ma anche:

<Cliente>
data: zzz, cognome: yyy, nome: xxx
</Cliente>

Perciò, quando assegno i dati alla tupla avrò che ogni record presenterà campi diversi nella stessa posizione indicizzata: ad esempio db[0][0] ci sarà il nome, mentre db[1][0] presenterà la data.

Non so se mi sono spiegato. Qualche dritta sulla strada per la risoluzione?

Gabry.
--
Gabriele Battaglia, IZ4APU (Libero)
Sent from TB on Windows 10, Genus Bononiae's computer.
_______________________________________________
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python

Rispondere a