I want to run a python script from within another. By within I mean any state changes from the child script effect the parent’s state. So if a variable is set in the child, it gets changed in the parent.
Normally you could do something like
import module
But the issue is here the child script being run is an argument to the parent script, I don’t think you can use import with a variable
Something like this
$python run.py child.py
This would be what I would expect to happen
#run.py
#insert magic to run argv[1]
print a
#child.py
a = 1
$python run.py child.py
1
You can use the
__import__function which allows you to import a module dynamically:(You may need to remove the trailing
.pyor not specify it on the command line.)From the Python documentation: