diff options
author | Terry Jan Reedy <tjreedy@udel.edu> | 2012-07-08 21:35:26 (GMT) |
---|---|---|
committer | Terry Jan Reedy <tjreedy@udel.edu> | 2012-07-08 21:35:26 (GMT) |
commit | 45ed012433443cc9d79729b91f01f4a5ffe28ba6 (patch) | |
tree | 2e2c96f2c139b173d7f07956ffd9a8e2b29ed690 /Doc | |
parent | e7d4b607f16ad1116cc6fe4c00cc344c3f2cbe79 (diff) | |
download | cpython-45ed012433443cc9d79729b91f01f4a5ffe28ba6.zip cpython-45ed012433443cc9d79729b91f01f4a5ffe28ba6.tar.gz cpython-45ed012433443cc9d79729b91f01f4a5ffe28ba6.tar.bz2 |
Issue #13557: Clarify effect of giving two different namespaces to exec or
execfile().
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/library/functions.rst | 5 | ||||
-rw-r--r-- | Doc/reference/simple_stmts.rst | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index 54baecf..a324e51 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -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 and evaluated as a sequence of Python statements (similarly to a module) using 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 formerly *locals* was required to be a dictionary. diff --git a/Doc/reference/simple_stmts.rst b/Doc/reference/simple_stmts.rst index 05b78a0..ce22b67 100644 --- a/Doc/reference/simple_stmts.rst +++ b/Doc/reference/simple_stmts.rst @@ -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 variables. If two expressions are given, they are used for the global and local 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 Formerly, *locals* was required to be a dictionary. |