[Python] parsing config file
Daniele Varrazzo
piro a develer.com
Mar 26 Nov 2013 12:23:46 CET
On 2013-11-24 08:32, Giovanni Porcari wrote:
> Il giorno 24/nov/2013, alle ore 02:33, Daniele Varrazzo
> <piro a develer.com> ha scritto:
>> Ma un file di configurazione: ma che ci vuole sax per parsare un
>> paio di fetenti coppie chiave valore? Ancora a pensare solo per un
>> secondo se un valore logico lo devi scrivere come 1, true oppure v?
>> C'è di meglio, no?
> <db>
> <development implementation="postgres" host="localhost" port='5432'
> password="mypassword" user="myuser"/>
> Io ad esempio lo leggo così:
>
> config=Bag(myfile)
> development_port=config('db.development?port')
>>>> '5432'
Esattamente quello che intendevo: lo leggi male. L'interfaccia è fica e
comodissima, ne sono certo, ma l'informazione nel file è incompleta.
Passa la stringa "5432" ad una funzione socket e quella esploderà:
>>> s.listen(('localhost', '5432'))
TypeError: an integer is required
Tra l'altro "5432" non è chiaramente una porta valida: è maggiore di
65535:
>>> "5432" > 65535
True
Ad un file di configurazione si chiedono poche cose. Tra queste secondo
me sono abbastanza importanti:
- essere editabile a mano
- essere fortemente tipizzato
e ad xml mancano entrambe.
-- Daniele
Maggiori informazioni sulla lista
Python