PYTHON(3 January 1994)

NAME
python - an interpreted, interactive, object-oriented programming language

SYNOPSIS
python [ X11-options ] [ -d ] [ -i ] [ -k ] [ -v ] [ -c command | script | - ] [ arguments ]

DESCRIPTION
Python is an interpreted, interactive, object-oriented programming language that combines remarkable power with very clear syntax. For an introduction to programming in Python you are referred to the Python Tutorial. The Python Library Reference documents built-in and standard types, constants, functions and modules. Finally, the Python Reference Manual describes the syntax and semantics of the core language in (perhaps too) much detail.

Python's basic power can be extended with your own modules written in C or C++. On some (most?) systems such modules may be dynamically loaded. Python is also adaptable as an extension language for existing applications. See the internal documentation for hints.

COMMAND LINE OPTIONS

-d  Turn on parser debugging output (for wizards only, depending on compilation options). -i When a script is passed as first argument or the -c option is used, enter interactive mode after executing the script or the command. This can be useful to inspect global variables or a stack trace when a script raises an exception.

-i  When executing a program from a file, this option enters interactive mode after the program has completed. It does not read the $PYTHONSTARTUP file.

-k  This hack, eh, feature is intended to help you to find expression statements that print a value. Although a feature of the language, it can sometimes be annoying that when a function is called which returns a value that is not None, the value is printed to standard output, and it is not always easy to find which statement is the cause of an unwanted `1', for instance. When this option is set, if an expression statement prints its value, the exception RuntimeError is raised. The resulting stack trace will help you to track down the culprit.

-v  Print a message each time a module is initialized, showing the place (filename or built-in module) from which it is loaded.

-c command
    Specify the command to execute (see next section). This terminates the option list (following options are passed as arguments to the command).

When the interpreter is configured to contain the stdwin built-in module for use with the X window system, additional command line options common to most X applications are recognized (by STDWIN), e.g. -display displayname and -geometry widthxheight+x+y. The complete set of options is described in the STDWIN documentation.

INTERPRETER INTERFACE
The interpreter interface resembles that of the UNIX shell: when called with standard input connected to a tty device, it prompts for commands and executes them until an EOF is read; when called with a file name argument or with a file as standard input, it reads and executes a script from that file; when called with -c command, it executes the Python statement(s) given as command. Here command may contain multiple statements separated by newlines. Leading whitespace is significant in Python statements! In non-interactive mode, the entire input is parsed befored it is executed.

If available, the script name and additional arguments thereafter are passed to the script in the Python variable sys.argv , which is a list of strings (you must first import sys to be able to access it). If no script name is given, sys.argv is empty; if -c is used, sys.argv[0] contains the string '-c'. Note that options interpreter by the Python interpreter or by STDWIN are not placed in sys.argv.

In interactive mode, the primary prompt is `>>>'; the second prompt (which appears when a command is not complete) is `...'. The prompts can be changed by assignment to sys.ps1 or sys.ps2. The interpreter quits when it reads an EOF at a prompt. When an unhandled exception occurs, a stack trace is printed and control returns to the primary prompt; in non-interactive mode, the interpreter exits after printing the stack trace. The interrupt signal raises the KeyboardInterrupt exception; other UNIX signals are not caught (except that SIGPIPE is sometimes ignored, in favor of the IOError exception). Error messages are written to stderr.

FILES AND DIRECTORIES
These are subject to difference depending on local installation conventions:

/usr/local/bin/python
    Recommended location of the interpreter.

/usr/local/lib/python
    Recommended location of the directory containing the standard modules.

ENVIRONMENT VARIABLES

PYTHONPATH
    Augments the default search path for module files. The format is the same as the shell's $PATH: one or more directory pathnames separated by colons. Non-existant directories are silently ignored. The default search path is installation dependent, but always begins with `.', (for example, .:/usr/local/lib/python ). The default search path is appended to $PYTHONPATH. The search path can be manipulated from within a Python program as the variable sys.path .

PYTHONSTARTUP
    If this is the name of a readable file, the Python commands in that file are executed before the first prompt is displayed in interactive mode. The file is executed in the same name space where interactive commands are executed so that objects defined or imported in it can be used without qualification in the interactive session. You can also change the prompts sys.ps1 and sys.ps2 in this file.

PYTHONDEBUG
    If this is set to a non-empty string it is equivalent to specifying the -d option.

PYTHONINSPECT
    If this is set to a non-empty string it is equivalent to specifying the -i option.

PYTHONKILLPRINT
    If this is set to a non-empty string it is equivalent to specifying the -k option.

PYTHONVERBOSE
    If this is set to a non-empty string it is equivalent to specifying the -v option.

SEE ALSO
Python Tutorial
Python Library Reference
Python Reference Manual
STDWIN under X11

BUGS AND CAVEATS
The first time stdwin is imported, it initializes the STDWIN library. If this initialization fails, e.g. because the display connection fails, the interpreter aborts immediately.

AUTHOR
Guido van Rossum
CWI (Centrum voor Wiskunde en Informatica)
P.O. Box 4079
1009 AB  Amsterdam
The Netherlands

E-mail: Guido.van.Rossum@cwi.nl

MAILING LIST
There is a mailing list devoted to Python programming, bugs and design. To subscribe, send mail containing your real name and e-mail address in Internet form to python-list-request@cwi.nl.

COPYRIGHT
Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum, Amsterdam, The Netherlands.

    All Rights Reserved

Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the names of Stichting Mathematisch Centrum or CWI not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.