It seems eval is modifying the passed in locals/globals. This is behaviour I did not expect and is really messing up my web.py app.
Python 2.5.1 (r251:54863, Mar 7 2008, 04:10:12)
[GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> d = dict(a=1)
>>> d.keys()
['a']
>>> eval("a", d)
1
>>> d.keys()
['a', '__builtins__']
That can't be right.
Regards
Janto
--
http://mail.python.org/mailman/listinfo/python-list
