I currently have multiple versions of Python installed on my Mac, the one that came with it, a version I downloaded recently from python.org, an older version used to run Zo
The approach I prefer which should work on every UNIX-like operating system:
Create for each application which need an specific python version an user account. Install in each user count the corresponding python version with an user-local prefix (like ~/build/python) and add ~/build/bin/ to the PATH environment variable of the user. Install/use your python applications in their correct user.
The advantage of this approach is the perfect isolation between the individual python installations and relatively convenient selection of the correct python environment (just su to the appropriate user). Also the operating system remains untouched.