[Python] Problema con la condivisione e l'utilizzo di un dict globale

lex mlist lexmlist a gmail.com
Sab 13 Nov 2010 17:34:21 CET


Si immagino che il problema quindi sia nel design dell'applicazione, perchè
l'import già adesso e sicuramente pensavo di usarlo in un'altro modulo che
non è quello finale, e quindi si otterrebbe una cosa del genere:
error importa application, altri file del package usano error, il file
main.py include application e usa application.

error e gli altri file però avrebbero bisogno dei dati del file yaml senza
che main.py li includa (vengono usato direttamente dal package non sono per
il file main.py), speravo che avviando il tutto a runtime funzionasse,
perchè creo prima application e poi uso tutte le altre feature del package
(tipo error).
Mi sà che allora mi tocca trovare una strada alternativa. Il file yaml mi
tornerebbe utile perchè per modificare il comportamento del programma mi
basterebbe modificare quel valore e lanciare di nuovo il programma anzichè
rimettere mano al sorgente e, magari, andare a modificare tutte le chiamate
a error per settare debug a True o False. Non si tratta comunque solo di una
flag di debug, ma anche di informazioni aggiuntive che si definiscono a
runtime ma che servono ai file importati internamente.
Probabilmente stò incasinando io stesso il design, metto un po' di ordine e
magari se non riesco lo espongo meglio.

Riguardo l'uso del logger, si ci avevo già pensato, ma ancora non sono
riuscito a capire come settare solo in un punto del programma il tipo di
logging richiesto (per dire, se poi voglio disabilitare i messaggi di debug
non vorrei dovermi modificare tutti i file per cambiare il valore
logging.DEBUG).

Riguardo invece il fatto di __debug__ hai perfettamente ragione, la logica
da C mi ha indotto a pensare che fosse una macro, mentre è una variabile
python, probabilmente potrebbe essere migliore, ma forse complica troppo le
cose o rallenta troppo l'esecuzione boh, chissà (bisognerebbe chiedere al
Guido in persona).
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20101113/60956681/attachment-0001.htm 


Maggiori informazioni sulla lista Python