Issue #13557: Clarify effect of giving two different namespaces to exec or

execfile().
This commit is contained in:
Terry Jan Reedy 2012-07-08 17:35:26 -04:00
parent e7d4b607f1
commit 45ed012433
3 changed files with 10 additions and 2 deletions

View File

@ -430,7 +430,10 @@ available. They are listed here in alphabetical order.
The arguments are a file name and two optional dictionaries. The file is parsed The arguments are a file name and two optional dictionaries. The file is parsed
and evaluated as a sequence of Python statements (similarly to a module) using and evaluated as a sequence of Python statements (similarly to a module) using
the *globals* and *locals* dictionaries as global and local namespace. If the *globals* and *locals* dictionaries as global and local namespace. If
provided, *locals* can be any mapping object. provided, *locals* can be any mapping object. Remember that at module level,
globals and locals are the same dictionary. If two separate objects are
passed as *globals* and *locals*, the code will be executed as if it were
embedded in a class definition.
.. versionchanged:: 2.4 .. versionchanged:: 2.4
formerly *locals* was required to be a dictionary. formerly *locals* was required to be a dictionary.

View File

@ -993,6 +993,9 @@ current scope. If only the first expression after :keyword:`in` is specified,
it should be a dictionary, which will be used for both the global and the local it should be a dictionary, which will be used for both the global and the local
variables. If two expressions are given, they are used for the global and local variables. If two expressions are given, they are used for the global and local
variables, respectively. If provided, *locals* can be any mapping object. variables, respectively. If provided, *locals* can be any mapping object.
Remember that at module level, globals and locals are the same dictionary. If
two separate objects are given as *globals* and *locals*, the code will be
executed as if it were embedded in a class definition.
.. versionchanged:: 2.4 .. versionchanged:: 2.4
Formerly, *locals* was required to be a dictionary. Formerly, *locals* was required to be a dictionary.

View File

@ -284,7 +284,9 @@ Build
- Issue #14437: Fix building the _io module under Cygwin. - Issue #14437: Fix building the _io module under Cygwin.
Documentation Documentation
-------------
- Issue #13557: Clarify effect of giving two different namespaces to exec or
execfile().
- Issue #14034: added the argparse tutorial. - Issue #14034: added the argparse tutorial.