On Fri, 19 Feb 2010 11:59:05 +0100, Stefano Dal Pra <s.dal...@gmail.com> wrote: > Grazie mille! > > Oso rilanciare, visto che mi avete risolto il problema in 2 min. > > Se uno facesse invece: > > from test import x,y,z > > si potrebbe fare lo stesso? > > ( il reload mi va benissimo, per carita', ma se sapete qualcosa anche > per questo caso...)
In linea di principio, reload(x.y.z) funziona. In pratica, meno, perché se altri modi (es. x.y o x.y.w) hanno importato x.y.z, il loro puntatore non cambia. O se cambi un modulo usato da x.y.z devi reloadare prima il modulo, poi x.y.z. Io usavo trucchi di "deep reload" per ovviare alla cosa. Ora non trovo più facilmente riferimenti alla cosa su google: dovresti indagare meglio, io non ho tempo ora scusa. Non so se invece qualcuno ha già qualcosa da farti leggere a portata di mano. deep reload è un palliativo (piallativo?...) Il modo buono di fare le cose è di scrivere il tuo test in una unit test e far girare questo ogniqualvolta cambi qualcosa: è stato così che ho smesso di usare deep reload e largamente dimenticato i problemi che comunque lasciava aperti. Ti sembra di perdere tempo... in realtà dopo mezz'ora che fai così ti accorgi che di tempo ne risparmi parecchio. Usa unittest della stdlib e/o nosetest (http://somethingaboutorange.com/mrl/projects/nose/0.11.1/) e vedi che la shell per i test la userai sempre meno. Ciao! -- Daniele Varrazzo - Develer S.r.l. http://www.develer.com _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python