Is it intentional that locals() returns a copy/snapshot of the local variables sometimes, and sometimes a reference? Like when enabling tracing, such as in the code pasted below. The documentation ("Update and return a dictionary containing the current scope's local variables.") is pretty unclear.
import sys def X(): l = locals() i = "foo" print "Is 'i' in stored locals()? ", ('i' in l) print "Running normally" X() print "Enabling tracing" def t(*a): return t sys.settrace(t) X() _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com