Il modulo shelve di Python

Il modulo shelve mi permette di salvare una classe o un oggetto strutturato in un file esterno al programma.

A cosa serve? Una volta creato, posso ricaricare l'oggetto in qualsiasi momento nel programma o in altri programmi.

    Un esempio pratico

    Per spiegare il funzionamento del modulo shelve, farò un esempio pratico.

    Sviluppo due programmi distinti (A e B).

    1. Il programma A salva un oggetto strutturato.
    2. Il programma B legge l'oggetto.

    come trasferire i dati di una classe tramite il modulo shelve di Python

    Come creare e salvare un oggetto

    Il programma A crea la classe Rubrica e aggiunge al suo interno un oggetto.

    1. import shelve
    2. db = shelve.open('nome')
    3. class Rubrica:
    4. def __init__(self, nome):
    5. self.nome = nome
    6. var = Rubrica('Minini')
    7. db['Andrea'] = var
    8. db.close()

    La classe e i dati sono salvati in un file esterno al programma (nomefile) tramite il modulo shelve.

    Come leggere l'oggetto

    Il programma B legge l'oggetto (nomefile) e i dati al suo interno.

    1. import shelve
    2. class Rubrica:
    3. def __init__(self, nome):
    4. self.nome = nome
    5. db = shelve.open('db')
    6. var=db['Andrea']
    7. print(var.nome)

    L'output del programma è il seguente:

    Minini

    Grazie a questo modulo ho trasferito la classe e i dati da un programma all'altro tramite un file binario.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    I moduli python