El día 4 de noviembre de 2010 20:04, jordi torrents
<[email protected]> escribió:

> Es verdad que la utilización directa de "globals()" es bastante
> críptica pero creo que lo que propones no funcionaría en mi caso.

El uso de globals() de esta manera tiene sentido cuando no conoces de
antemano el nombre de la variable global. En tu caso creo que no es
así, por lo que igual te daría haber puesto:

a = 1 is not options.number else options.number

Las funciones deberían declarar esta variable como "global", aunque
está implícito si no modificas su valor.


Tal como propones, una solución sería crear la instancia en programa
principal e importarla desde las funciones. Para ello puedes
aprovechar que el módulo principal siempre se llama __main__

from __main__ import job_server


Otra opción sería centralizar las llamadas a las funciones en un único
lugar y aplicar el método set_ncpus sobre cada instancia, pero supongo
que ya lo habrás descartado, pero es una buena forma de tener
documentado cómo has hecho las pruebas por si lo necesitas revisar más
adelante.
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a