There are two obvious ways of installing multiple versions of Python.
In the Python source distribution, one would usually do a make install to install Python in the pre-configured place. However, you can also do a make altinstall which should install a new version of Python in that place without replacing the python program.
Thus, if you have Python 1.5.2 as /usr/bin/python and you have configured Python 2.0 to install in /usr/bin then you can (theoretically) do a make altinstall to keep /usr/bin/python as Python 1.5.2 whilst creating /usr/bin/python20 as Python 2.0.
For various reasons covered in EnvironmentVariables, I think it's easier to install Python in the following way...
On my Red Hat system, Python 1.5.2 is installed under /usr - so, the executable is found at /usr/bin/python. To install Python 2.0, I downloaded the source distribution of Python and configured it so that the prefix was given as /usr/local (this is an option to the configure program). I then installed Python 2.0 in the normal way using make install, so that the executable is found at /usr/local/bin/python.
To determine which program is run when python is invoked depends on certain EnvironmentVariables, of course.
-- PaulBoddie - 31 Oct 2001