GNU Info

Info Node: (python2.1-lib.info)codeop

(python2.1-lib.info)codeop


Next: pprint Prev: code Up: Python Runtime Services
Enter node , (file) or (file)node

Compile Python code
===================

This manual section was written by Moshe Zadka
<moshez@zadka.site.co.il>.
Compile (possibly incomplete) Python code.

The `codeop' module provides a function to compile Python code with
hints on whether it is certainly complete, possibly complete or
definitely incomplete.  This is used by the `code' module and should
not normally be used directly.

The `codeop' module defines the following function:

`compile_command(source[, filename[, symbol]])'
     Tries to compile SOURCE, which should be a string of Python code
     and return a code object if SOURCE is valid Python code. In that
     case, the filename attribute of the code object will be FILENAME,
     which defaults to `'<input>''.  Returns `None' if SOURCE is _not_
     valid Python code, but is a prefix of valid Python code.

     If there is a problem with SOURCE, an exception will be raised.
     `SyntaxError' is raised if there is invalid Python syntax, and
     `OverflowError' if there is an invalid numeric constant.

     The SYMBOL argument determines whether SOURCE is compiled as a
     statement (`'single'', the default) or as an expression
     (`'eval'').  Any other value will cause `ValueError' to be raised.

     *Caveat:* It is possible (but not likely) that the parser stops
     parsing with a successful outcome before reaching the end of the
     source; in this case, trailing symbols may be ignored instead of
     causing an error.  For example, a backslash followed by two
     newlines may be followed by arbitrary garbage.  This will be fixed
     once the API for the parser is better.


automatically generated by info2www version 1.2.2.9