sending a variable to an imported module
Bastien Semene
bsemene at cyanide-studio.com
Thu Dec 8 06:28:21 EST 2011
Hi list,
I'm trying to pass a variable to an imported module without singletons.
I've seen in the doc, and tested that I can't use global to do it :
=== module.py ===
def testf():
print test
=== main.py ===
global test
test = 1
imported_module = __import__(module, globals(), locals(), [], -1)
importmodule.testf()
=== output ===
NameError: global name 'test' is not defined
While I was reading many (many) threads about singleton I read people
claiming that singletons can always be avoided (I can't remeber the most
relevant thread on stackoverflow).
I don't want to start a new debate about singletons, I think Internet
has enough debates yet.
But in my case I'd like to access this variable anywhere and at anytime
without having to pass it as a parameter everywhere (this variable is a
configuration manager object).
How can I achieve that without singletons ?
I'm beginner in Python, that's why I'm maybe missing something obvious.
Thanks,
Bastien Semene
More information about the Python-list
mailing list