>2010/11/3 Oswaldo Hernández:
>>
>> Has probado a insertar la variable directamente en el diccionario >globals?:
>>
>> if not options.number:
>>    globals()["a"] = 1
>> else:
>>    globals()["a"] = options.number
>
>Gracias a todos por vuestros comentarios y sugerencias. Finalmente >he
>optado por la solución que propone Oswaldo. No sé si esta solución >es
>muy ortodoxa, pero me funciona perfectamente.


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.

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.

Algo así:

archivo -> glob.py

--------------------------------------------------------------

var1 = 0

var2 = 23

  

def ff():

    print "dddddddddddddddddd"

--------------------------------------------------------------

archivo  ->  globales.py
-------------------------------------------------------
import glob

def mm():
    print glob.var2
    glob.var2 = 999
    print glob.var2
    glob.ff()

mm()
--------------------------------------------------------------

saludos



      
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a