I want to extract a variable named value that is set in a second, arbitrarily chosen, python script.
The process works when do it manually in pyhton's interactive mode, but when I run the main script from the command line, value is not imported.
The main script's input arguments are already successfully forwarded, but value seems to be in the local scope of the executed script.
I already tried to define value in the main script, and I also tried to set its accessibility to global.
This is the script I have so far
import sys
import getopt
def main(argv):
    try:
        (opts, args) = getopt.getopt(argv, "s:o:a:", ["script=", "operations=", "args="])
    except getopt.GetoptError as e:
        print(e)
        sys.exit(2)
    # script to be called
    script = ""
    # arguments that are expected by script
    operations = []
    argv = []
    for (opt, arg) in opts:
        if opt in ("-o", "--operations"):
            operations = arg.split(',')
            print("operations = '%s'" % str(operations))
        elif opt in ("-s", "--script"):
            script = arg;
            print("script = '%s'" % script)
        elif opt in ("-a", "--args"):
            argv = arg.split(',')
            print("arguments = '%s'" % str(argv))
    # script should define variable 'value'
    exec(open(script).read())
    print("Executed '%s'. Value is printed below." % script)
    print("Value = '%s'" % value)
if __name__ == "__main__":
    main(sys.argv[1:])
 
     
     
    