summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1995-01-10 10:50:24 (GMT)
committerGuido van Rossum <guido@python.org>1995-01-10 10:50:24 (GMT)
commitf860162093a2dc4d633ed0bf6c09a4eb88d26eed (patch)
tree14a6ab337c15bb98aee55c49ab9874b0fa7bb926
parent4ff90ad2a0b0c5ad90b36eda610111e5abe72903 (diff)
downloadcpython-f860162093a2dc4d633ed0bf6c09a4eb88d26eed.zip
cpython-f860162093a2dc4d633ed0bf6c09a4eb88d26eed.tar.gz
cpython-f860162093a2dc4d633ed0bf6c09a4eb88d26eed.tar.bz2
updated eval(), added execfile()
-rw-r--r--Doc/lib/libfuncs.tex38
-rw-r--r--Doc/libfuncs.tex38
2 files changed, 56 insertions, 20 deletions
diff --git a/Doc/lib/libfuncs.tex b/Doc/lib/libfuncs.tex
index 923daf3..f276fb2 100644
--- a/Doc/lib/libfuncs.tex
+++ b/Doc/lib/libfuncs.tex
@@ -87,16 +87,16 @@ exactly one argument.)
\code{(math.floor(\var{a} / \var{b}), \var{a} \%{} \var{b})}.
\end{funcdesc}
-\begin{funcdesc}{eval}{s\optional{\, globals\optional{\, locals}}}
+\begin{funcdesc}{eval}{expression\optional{\, globals\optional{\, locals}}}
The arguments are a string and two optional dictionaries. The
- string argument is parsed and evaluated as a Python expression
- (technically speaking, a condition list) using the dictionaries as
- global and local name space. The string must not contain null bytes
- or newline characters. The return value is the
- result of the expression. If the third argument is omitted it
- defaults to the second. If both dictionaries are omitted, the
+ \var{expression} argument is parsed and evaluated as a Python
+ expression (technically speaking, a condition list) using the
+ \var{globals} and \var{locals} dictionaries as global and local name
+ space. If the \var{globals} dictionary is omitted it defaults to
+ the \var{locals} dictionary. If both dictionaries are omitted, the
expression is executed in the environment where \code{eval} is
- called. Syntax errors are reported as exceptions. Example:
+ called. The return value is the result of the evaluated expression.
+ Syntax errors are reported as exceptions. Example:
\bcode\begin{verbatim}
>>> x = 1
@@ -111,8 +111,26 @@ exactly one argument.)
passing \code{'eval'} to the \var{kind} argument.
Note: dynamic execution of statements is supported by the
- \code{exec} statement.
-
+ \code{exec} statement. Execution of statements from a file is
+ supported by the \code{execfile()} function.
+
+\end{funcdesc}
+
+\begin{funcdesc}{execfile}{file\optional{\, globals\optional{\, locals}}}
+ This function is similar to the \code{eval()} function or the
+ \code{exec} statement, but parses a file instead of a string. It is
+ different from the \code{import} statement in that it does not use
+ the module administration -- it reads the file unconditionally and
+ does not create a new module.
+
+ 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 \var{globals} and \var{locals}
+ dictionaries as global and local name space. If the \var{globals}
+ dictionary is omitted it defaults to the \var{locals} dictionary.
+ If both dictionaries are omitted, the expression is executed in the
+ environment where \code{execfile} is called. The return value is
+ None.
\end{funcdesc}
\begin{funcdesc}{filter}{function\, list}
diff --git a/Doc/libfuncs.tex b/Doc/libfuncs.tex
index 923daf3..f276fb2 100644
--- a/Doc/libfuncs.tex
+++ b/Doc/libfuncs.tex
@@ -87,16 +87,16 @@ exactly one argument.)
\code{(math.floor(\var{a} / \var{b}), \var{a} \%{} \var{b})}.
\end{funcdesc}
-\begin{funcdesc}{eval}{s\optional{\, globals\optional{\, locals}}}
+\begin{funcdesc}{eval}{expression\optional{\, globals\optional{\, locals}}}
The arguments are a string and two optional dictionaries. The
- string argument is parsed and evaluated as a Python expression
- (technically speaking, a condition list) using the dictionaries as
- global and local name space. The string must not contain null bytes
- or newline characters. The return value is the
- result of the expression. If the third argument is omitted it
- defaults to the second. If both dictionaries are omitted, the
+ \var{expression} argument is parsed and evaluated as a Python
+ expression (technically speaking, a condition list) using the
+ \var{globals} and \var{locals} dictionaries as global and local name
+ space. If the \var{globals} dictionary is omitted it defaults to
+ the \var{locals} dictionary. If both dictionaries are omitted, the
expression is executed in the environment where \code{eval} is
- called. Syntax errors are reported as exceptions. Example:
+ called. The return value is the result of the evaluated expression.
+ Syntax errors are reported as exceptions. Example:
\bcode\begin{verbatim}
>>> x = 1
@@ -111,8 +111,26 @@ exactly one argument.)
passing \code{'eval'} to the \var{kind} argument.
Note: dynamic execution of statements is supported by the
- \code{exec} statement.
-
+ \code{exec} statement. Execution of statements from a file is
+ supported by the \code{execfile()} function.
+
+\end{funcdesc}
+
+\begin{funcdesc}{execfile}{file\optional{\, globals\optional{\, locals}}}
+ This function is similar to the \code{eval()} function or the
+ \code{exec} statement, but parses a file instead of a string. It is
+ different from the \code{import} statement in that it does not use
+ the module administration -- it reads the file unconditionally and
+ does not create a new module.
+
+ 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 \var{globals} and \var{locals}
+ dictionaries as global and local name space. If the \var{globals}
+ dictionary is omitted it defaults to the \var{locals} dictionary.
+ If both dictionaries are omitted, the expression is executed in the
+ environment where \code{execfile} is called. The return value is
+ None.
\end{funcdesc}
\begin{funcdesc}{filter}{function\, list}