trying to modify locals() dictionary
TP
Tribulations at Paralleles.invalid
Mon Jan 12 13:51:23 EST 2009
Hi everybody,
I try to modify locals() as an exercise.
According to the context (function or __main__), it works differently (see
below). Why? Thanks
Julien
########################################
def try_to_modify_locals( locals_ ):
locals_[ "a" ] = 2
print "locals_[ 'a' ]=", locals_[ "a" ]
return locals_
def test_modify_locals():
a = 3
l = try_to_modify_locals( locals() )
print l is locals()
print a
# Below, a remains equal to 3
print "test from test_modify_locals()"
test_modify_locals()
# But here, it works: a is modified
print "test from __main__"
a = 3
l = try_to_modify_locals( locals() )
print l is locals()
print a
########################################
--
python -c "print ''.join([chr(154 - ord(c)) for c in '*9(9&(18%.\
9&1+,\'Z4(55l4('])"
"When a distinguished but elderly scientist states that something is
possible, he is almost certainly right. When he states that something is
impossible, he is very probably wrong." (first law of AC Clarke)
More information about the Python-list
mailing list