Commit b6e1c110 authored by Fred Drake's avatar Fred Drake

note that the return and yield statements cannot be used at the top level in

exec statements; people coming from certain other languages seem to be
confused by this on a regular basis
parent b3dfc0ae
...@@ -873,7 +873,12 @@ expression should evaluate to either a string, an open file object, or ...@@ -873,7 +873,12 @@ expression should evaluate to either a string, an open file object, or
a code object. If it is a string, the string is parsed as a suite of a code object. If it is a string, the string is parsed as a suite of
Python statements which is then executed (unless a syntax error Python statements which is then executed (unless a syntax error
occurs). If it is an open file, the file is parsed until \EOF{} and occurs). If it is an open file, the file is parsed until \EOF{} and
executed. If it is a code object, it is simply executed. executed. If it is a code object, it is simply executed. In all
cases, the code that's executed is expected to be be valid as file
input (see section~\ref{file-input}, ``File input''). Be aware that
the \keyword{return} and \keyword{yield} statements may not be used
outside of function definitions even within the context of code passed
to the \keyword{exec} statement.
In all cases, if the optional parts are omitted, the code is executed In all cases, if the optional parts are omitted, the code is executed
in the current scope. If only the first expression after \keyword{in} in the current scope. If only the first expression after \keyword{in}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment