How do I install Python 2.7.3 32 bit and 64 bit on Windows side by side

大憨熊 提交于 2019-11-28 20:14:32

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

  • Install two different Versions for different bitness.
  • Prepare a script to update the registry key each time you want to switch between the bitness. I happened to stumble upon a simple similar script in effbot which does the Job.

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.

Shiva Prasad

While installing 2nd python, for Register Extensions select "Entire feature will be unavailable" option. Python 64 Installation path will be in registry "HKLM:SOFTWARE\Python\PythonCore\2.7\InstallPath"

Python 64 bit PythonPath will be in "HKLM:SOFTWARE\Python\PythonCore\2.7\PythonPath"

Python 32 Installation path will be in registry "HKLM:SOFTWARE\Wow6432Node\Python\PythonCore\2.7\InstallPath"

Python 32 bit PythonPath will be in "HKLM:SOFTWARE\Wow6432Node\Python\PythonCore\2.7\PythonPath"

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!