On Thu, 22 Oct 2020 at 15:59, Gabriele Battaglia <iz4...@libero.it> wrote:
> Ciao. > Devo creare un DB di clienti e sto pensando alla miglior struttura dati > che posso utilizzare. > Avrò un nome cognome e poi, associati a questo nome cognome, una lunga > serie di dati che devo poter estrarre. > > Pensavo ad un dizionario la cui chiave sia, appunto nome cognome in una > unica stringa, oppure un ID, e come valore una lista che contenga tutti > i campi che caratterizzano quel cliente, parliamo di una cinquantina di > valori. > Ma perche' non usare un Db per la persistenza dei dati e poi fare un mapping dei campi della tabella con una lista di dizionari? A meno che i valori non siano anche solo in parte specifici di un dato cliente (esempio uno ha la Partita Iva e un'altro il codice fiscale e un terzo il social security number anglosassone. In quel caso la struttura che citi valore: tipo dato = clienti[id][dato] > dovresti metterla u una tabella strutturata come segue id | id_cliente | nome_campo | valore e poi mappare nel dizionario una dizionario che contiene i campi. Una cosa del tipo lista_clienti = [ {'id': 3, 'nome': 'Mario', 'cognome': 'Rossi'}, {'id': $, 'nome': 'Luigi', 'cognome': 'Farquati'}, ] lista_campi_clienti = [ {'id': 1,'id_cliente': 3, 'campi': {'campo': 'codice fiscale': 'DFGERM23R45T145S', 'indirizzo': 'via di casa sua, 2'}}, {'id': 2,'id_cliente': 4, 'campi': {'campo': 'codice fiscale': 'TTRDSA21F27L534P', 'email 'cic...@ciccio.it'}}, ] Ancora meglio se oltre mettere i dati dentro un Db li consulti con un ORM, come SqlALchemy, che provvede a scolgere i compiti per te (selezione dati, inserimento, aggiornamento, cancellazione). Ti trovi che ti torna delle strutture (liste e dizionari) gia' pronte Carlos -- EZLN ... Para Todos Todo ... Nada para nosotros
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python