PYTHON(1) BSD General Commands Manual PYTHON(1)
python, pythonw -- an interpreted, interactive, object-oriented programming language
To support multiple versions, the programs named python and pythonw now just select the real version of Python to run, depending on various
settings. (As of Python 2.5, python and pythonw are interchangeable; both execute Python in the context of an application bundle, which
means they have access to the Graphical User Interface; thus both can, when properly programmed, display windows, dialogs, etc.) The current
supported versions are 2.6 and 2.7, with the default being 2.6. Use
% man python2.6
% man python2.7
% man pythonw2.6
% man pythonw2.7
to see the man page for a specific version. Without a version specified,
% man pydoc
and the like, will show the man page for the (unmodified) default version of Python (2.6). To see the man page for a specific version, use,
% man pydoc2.7
CHANGING THE DEFAULT PYTHON
% defaults write com.apple.versioner.python Version 2.7
will make version 2.7 the user default when running the both the python and pythonw commands (versioner is the internal name of the version-
selection software used).
To set a system-wide default, replace 'com.apple.versioner.python' with '/Library/Preferences/com.apple.versioner.python' (admin privileges
will be required).
The environment variable VERSIONER_PYTHON_VERSION can also be used to set the python and pythonw version:
% export VERSIONER_PYTHON_VERSION=2.7 # Bourne-like shells
% setenv VERSIONER_PYTHON_VERSION 2.7 # C-like shells
% python ...
This environment variable takes precedence over the preference file settings.
Versions 2.6 and 2.7 support 64-bit execution (which is on by default).
Like the version of Python, the python command can select between 32 and 64-bit execution (when both are available). Use:
% defaults write com.apple.versioner.python Prefer-32-Bit -bool yes
to make 32-bit execution the user default (using '/Library/Preferences/com.apple.versioner.python' will set the system-wide default). The
environment variable VERSIONER_PYTHON_PREFER_32_BIT can also be used (has precedence over the preference file):
% export VERSIONER_PYTHON_PREFER_32_BIT=yes # Bourne-like shells
% setenv VERSIONER_PYTHON_PREFER_32_BIT yes # C-like shells
Again, the preference setting and environmental variable applies to both python and pythonw.
USING A SPECIFIC VERSION
Rather than using the python command, one can use a specific version directly. For example, running python2.7 from the command line will run
the 2.7 version of Python, independent of what the default version of Python is.
One can use a specific version of Python on the #! line of a script, but that may have portability and future compatibility issues.
Note that the preference files and environment variable that apply to the python command, do not apply when running a specific version of
Python. In particular, running python2.6 will always default to 64-bit execution (unless one uses the arch(1) command to specifically select
a 32-bit architecture).
python2.6(1), python2.7(1), pythonw2.6(1), pythonw2.7(1), arch(1)
Aug 10, 2008 BSD