Variables globales a travez de formularios wxpython
Josu Oyanguren
josu en ubera.net
Mar Dic 28 11:57:26 CET 2004
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Yo suelo utilizar un sistema parecido. Esquemáticamente:
* tengo un config.py con los datos por defecto de las variables
* el mismo módulo config.py u otro al inicio pueden cargar diferentes
valores a las variables desde una base de datos, un archivo de
configuración o lo que sea.
* cualquier módulo puede utilizar "import config" y hacer uso de las
variables como config.VAR
Por ejemplo:
#-----------------------------------------------
# config.py
VAR1 = None
def cargarVariables():
~ # Aquí se cargan los valores de las variables
~ # Esto puede hacerse en config.py o en otro módulo
~ # que gestione el inicio de la aplicación
~ ...
~ VAR1 = tomarDeLaBaseDeDatos('VAR1')
~ ...
#-----------------------------------------------
para usar estas variables
#-----------------------------------------------
# modulo1.py
import config
print config.VAR1
#-----------------------------------------------
Carlos Edurado Sotelo Pinto escribió:
| estuve revisando estos datos, si se me paso eso pr la cabeza, pero mi
| duda esta sobre estos
| estos datos de configuracion deben ser cargados a una base de datos, lo
| que busco es que al iniciar estos datos sean cargados, si los pongo en
| un modulo global, puede ser como config.py, estos valores serian
| constantes y no globales, como podria hacer entocnes para cargar estos
| valores o alguna manera de cargar al inicio valores de configuracion de
| una base de datos que puedan ser leidos en cualquier momento
| la solucion mas fcail es acceder a cada momento que los necesite a la
| base de datos, pero esto solo me lentearia el sistema, pense una forma
| mas rapida cargar una sola ves estos datos y nada mas
| proponganme una solocion urgente.
| Un saludo\
| Carlos
|
| Ernesto Revilla wrote:
|
|> Creo que sería interesante que entendieses en concepto de global en
|> Python que no es como en VisualBasic u otros leguajes sino más bien
|> como en Java. Cada módulo (para ti ahora mismo, archivo de Python) es
|> un espacio de nombre. Puedes referirte del espacio de otro módulo
|> importándolo inicialmente. El código de ese módulo sólo se ejecuta en
|> la primera importación. Si haces otros imports, simplemente se
|> establece una referencia, no se ejecuta de nuevo. Yo suelo hacer
|> siguiente (parecido a Marcos): mi archivo Config.py tiene todo tipo
|> de configuraciones. Normalmente son asignaciones a variables
|> simplemente. Después desde cualquier otro módulo hago un import
|> Config y accedo a cada una de las variables de configuración
|> con Config.variable .
|>
|> Te aconsejo la lectura de:
|> http://docs.python.org/tut/node11.html especialmente el punto 9.2
|>
|> Erny
|>
|> Marcos Sánchez Provencio escribió:
|>
|>> Prueba con un módulo globales.py en el que definas todas las variables.
|>> Por ejemplo:
|>> #globales.py
|>> var1=27
|>>
|>> Luego, en cada uno de los otros módulos, le das
|>> #otrofichero.py
|>> import globales
|>>
|>> y puedes hacer
|>> print globales.var1
|>>
|>> ¿Es esto?
|>>
|>> El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto
|>> escribió:
|>>
|>>
|>>> hola gente sigo con problemas en las globales, sucede que quiero
|>>> hacer, buenos estoy en progreso de una apliciaon, esta tiene un
|>>> formulario midi de parent y obviamente midis child, el asunto que
|>>> busco es cargar una tabla de configuracion, los valores de dicha
|>>> tabla se usan a los largo de toda la apliciaon, entonces en vez de
|>>> cargarlos cada vez que lo necesito, cargarlos de una sola vez al
|>>> inicio,
|>>> el detalle que sucede es que cuando hago esto en el modulo principal
|>>> de la apliciaon no los leen los formularios
|>>> la sentencia que uso es global mivariable
|>>> y la llamo mediante mivariable. o algo esta mal y debo hacerlo de
|>>> otra forma
|>>> Por cierto
|>>> Una feliz navida y que la paz y felicidad reino en todos ustedes
|>>> esta noche buena y a lo largo de todo el año
|>>>
|>>> Carlos
|>>> _______________________________________________
|>>> Python-es mailing list
|>>> Python-es en aditel.org
|>>> http://listas.aditel.org/listinfo/python-es
|>>>
|>>
|>>
|>>
|>>
|>>
|>> ------------------------------------------------------------------------
|>>
|>> _______________________________________________
|>> Python-es mailing list
|>> Python-es en aditel.org
|>> http://listas.aditel.org/listinfo/python-es
|>>
|>>
|>
|>
|> ------------------------------------------------------------------------
|>
|> _______________________________________________
|> Python-es mailing list
|> Python-es en aditel.org
|> http://listas.aditel.org/listinfo/python-es
|>
|>
|
|
| ------------------------------------------------------------------------
|
| _______________________________________________
| Python-es mailing list
| Python-es en aditel.org
| http://listas.aditel.org/listinfo/python-es
- --
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFB0TwV5ju4HVxhuqQRAiGQAJ90Fsw0d/nL5BKpETVZpE3suFy/aQCg0Asw
R/vbCWyAse4uKgUp4zEciU0=
=acwK
-----END PGP SIGNATURE-----
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es