Creare una Bag

Per istanziare una Bag bisogna prima di tutto importare la classe dal modulo gnr.core.gnrbag

>>> from gnr.core.gnrbag import Bag

E poi possiamo instanziare una Bag vuota senza passare alcun parametro.

>>> mybag = Bag()

Ma il costruttore può ricevere un parametro polimorfico source che al quale posso passare diversi tipi di sorgenti di dati che saranno automaticamente convertiti in una Bag adeguata a rappresentarli. Fra i valori ammissibili di source ci sono:

  • un dizionario

  • una lista di tuple

  • una bag

  • una stringa contenente un frammento XML corretto

  • un path su disco che indirizzi ad un file XML corretto

  • un URL che indirizzi ad un file XML o html corretto

  • un file pickle

  • un path su disco che indirizzi ad una directory

    >>> b1 = Bag(dict(a=1, b=2))
    >>> b2 = Bag([('a',1), ('b',2)])
    >>> b3 = Bag('%s/test_files/standardxml.xml' %current)
    >>> b4 = Bag('https://www.python.org')
    >>> b5 = Bag('%s/test_files' %current)
    >>> b6 = Bag('<out> <a>5</a> <b>5</b> </out>')