Xavier Combelle added the comment: Hi Julien,
You are fully right that it is the builtin module dictionnary which is inserted in eval or exec context. However, if a "__builtins__" entry is passed to eval or exec, this builtin module dictionnary is modified hence the following work: >>> d={"tata":"tata"} >>> print(eval("tata",{'__builtins__':d})) tata ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue26363> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com