Jython: preload PythonInterpreter with values for use in scripts
Harald Kirsch
pifpafpuf at gmx.de
Fri Jul 18 12:55:54 EDT 2003
How can I set variables in PythonInterpreter such that
scripts then run via import can have access to it.
My idea was to go along the lines of:
PythonInterpreter ip = new PythonInterpreter();
// make the object about to use the interpreter
// available to that interpreter
ip.set("javaCaller", this);
ip.exec("import mystuff");
Within mystuff.py I wanted to do things like
m = sys.modules['__main__']
m.javaCaller.setThoseNiftyFeaturesOfTheCallingJavaObject("hello")
Alas, sys.modules does not contain '__main__'.
Is there any way to get hold of locals() of PythonInterpreter ip within
a module imported as shown above?
I would expect that execfile allows the above communication,
but then I have to do all the searching for the module myself.
Therefore a solution where the module is simply imported as above
is preferred.
Thanks,
Harald.
More information about the Python-list
mailing list