<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">>2010/11/3 Oswaldo Hernández:<br>>><br>>> Has probado a insertar la variable directamente en el diccionario >globals?:<br>>><br>>> if not options.number:<br>>> globals()["a"] = 1<br>>> else:<br>>> globals()["a"] = options.number<br>><br>>Gracias a todos por vuestros comentarios y sugerencias. Finalmente >he<br>>optado por la solución que propone Oswaldo. No sé si esta solución >es<br>>muy ortodoxa, pero me funciona perfectamente.<br><br><br>El problema que le veo es que queda muy escondida, si es una variable global tendría que quedar bien en claro eso por si otra persona, o vos mismo dentro de un tiempo, lee el programa.<br><br><span class="email">Yo lo haría al modo de Alvaro Manrique como te dijo en un mensaje. Y si tendría que usar esa variable en varios
módulos distintos (varios archivos .py), crearía un módulo con todas las variables globales y luego para leerlas o asignarles valores me referiría a esas variables con su nombre de módulo y todo.<br><br>Algo así:<br><br></span><span class="email">archivo -> glob.py<br>
</span><span class="email">--------------------------------------------------------------<br>
var1 = 0<br>
var2 = 23<br>
<br>
def ff():<br>
print "dddddddddddddddddd"<br>
</span><span class="email">--------------------------------------------------------------</span><br><span class="email"><br>archivo -> globales.py<br>-------------------------------------------------------<br>import glob<br><br>def mm():<br> print glob.var2<br> glob.var2 = 999<br> print glob.var2<br> glob.ff()<br><br>mm()<br>--------------------------------------------------------------<br><br></span>saludos<br></td></tr></table><br>