I have Windows Vista 64.
I have some projects requiring Python 2.7.3 64 bit and others requiring Python 2.7.3 32 bit (because some extensions do not work in 64 bit).
How do I prevent the Python 2.7.3 MSI installer (32 or 64 bot) from deleting the other version.
Side by side worked for me with Python 2.7.2 without problems.
You can generally install multiple Python Version side by side.
Install multiple python versions For Windows users, I recommend using the Windows x86-64 executable installer option if you work on a 64bit system. Otherwise, just use the Windows x86 executable installer . After locating the install option for the specific version, just press the download link.
If you wish to use multiple versions of Python on a single machine, then pyenv is a commonly used tool to install and switch between versions. This is not to be confused with the previously mentioned depreciated pyvenv script. It does not come bundled with Python and must be installed separately.
This appears to be working for me on Windows 7 64 bit. Choose one version to be your default installation, e.g. 64 bit, and install it first. Before doing anything else install the other version.
Specify a different installation directory and in the Customize Python 2.7.3
screen select Register Extensions
and select Entire feature will be unavailable
.
You can generally install multiple Python Version side by side. When installing in Windows, apart from file installation, registry is also updated so that any subsequent package/tools installation can enumerate all the Python Installation in the current m/c. Only problem happens if the installation is for the same version but different bitness. As because, the registry Path SOFTWARE\Python\Pythoncore\ does not differentiates with the bitness and bug-fix, you would end up overlaying the InstallPath and PythonPath if you are installation same version with different bug-fix or different bitness.
Solution
Update
As Ruediger Jungbeck pointed out that he can see two different registry keys, I suddenly recollected an important change post Vista. On a 64 bit system in order to enable accessing the registry keys from 32 bit and 64 bit application, Windows splits the registry at important nodes. For 64 bit applications, its the native registry path but for 32 bit applications its the WoW6432Node. So when running a 32 bit Version of Python\Tools\extension, it will only see the Wow6432Node. 64 bit applications will only see the native node. There are APIs to access the cross bitness nodes but that is outside the scope of this question. So to summarize, windows intelligently handles 32 and 64 bit applications by splitting the node which will allow 32 bit extensions to transparently access the 32 bit Python Installation.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With