我从2012年初开始安装了2.7版。对于在安装最新版本之前是否应该完全卸载并擦除此版本,我无法达成共识。
“软”删除旧版本?硬删除/清除旧版本?安装在顶部?
我在某处看到了一个特殊的安装/升级过程,该过程使用Python安装的“分段”方法,将不同的版本分开并保持功能。不知道这是否是事实上的标准方法。
我还想知道Revo是否太过热情,是否可能导致清除仍然需要的残留物(例如环境/ PATH变量)而引起问题。
(Win7 x64,32位Python)
我从2012年初开始安装了2.7版。对于在安装最新版本之前是否应该完全卸载并擦除此版本,我无法达成共识。
“软”删除旧版本?硬删除/清除旧版本?安装在顶部?
我在某处看到了一个特殊的安装/升级过程,该过程使用Python安装的“分段”方法,将不同的版本分开并保持功能。不知道这是否是事实上的标准方法。
我还想知道Revo是否太过热情,是否可能导致清除仍然需要的残留物(例如环境/ PATH变量)而引起问题。
(Win7 x64,32位Python)
Answers:
这个帖子现在已经快5年了!2020年,Python-2.7将停止从python.org接收官方更新。此外,还发布了Python-3.7。查看Python-Future,了解如何使您的Python-2代码与Python-3兼容。为了更新conda,文档现在建议conda update --all
在您的每个conda环境中使用更新该版本的所有软件包和Python可执行文件。另外,由于它们将名称更改为Anaconda,所以我不知道Windows注册表项是否仍然相同。
自2015年6月以来,没有对Python(x,y)进行任何更新,因此我认为可以断定它已被放弃。
更新:2016-11-11正如下面的@cxw注释所示,这些答案适用于相同的位版本,按位版本,我的意思是64位与32位。例如,这些答案将适用于从64位Python-2.7.10更新到64位Python-2.7.11,即:相同的位版本。虽然可以将两个不同的Python版本一起安装,但这需要一些技巧,因此我将为读者保存该练习。如果您不想黑客,我建议如果切换位版本,请先删除其他位版本。
更新日期:2016-05-16PATH
。解压后,conda
在您的bin
PyPI中创建符号链接到或安装conda。然后创建另一个名为符号链接conda-activate
到activate
在巨蟒/ Miniconda根bin文件夹。现在,Anaconda / Miniconda就像Ruby RVM。仅用于conda-activate root
启用Anaconda / Miniconda。conda update --all
以保持每个conda环境的更新,$ ln /c/Python33/python.exe python3
)。如果OP具有2.7.x,并且要安装较新的2.7.x,则
建议在安装Python(x,y)之前先卸载所有其他Python发行版
Program Files\Enthought
或home\AppData\Local\Enthought\Canopy\App
针对每个用户安装。通过使用内置的更新工具来更新较新的安装。查看他们的文档。其他Python 2.7安装在Windows上,ActivePython 2.7无法与其他Python 2.7安装共存(例如,来自python.org的Python 2.7构建)。在安装ActivePython 2.7之前,请卸载其他所有Python 2.7安装。
sage -upgrade
命令在内部处理升级。conda update --all
Anaconda / Miniconda允许用户创建环境来管理多个Python版本,包括Python- 2.6、2.7、3.3、3.4 和3.5。Anaconda / Miniconda的根安装当前基于Python-2.7或Python-3.5。
Anaconda可能会破坏其他Python安装。安装使用MSI安装程序。
[ 更新:2016-05-16] Anaconda和Miniconda现在使用.exe
安装程序,并提供选项来禁用Windows PATH
和注册表更改。
因此,根据安装方式和安装过程中选择的选项,可以在不中断现有Python安装的情况下安装Anaconda / Miniconda。如果.exe
使用安装程序和选项来改变的Windows PATH
和注册表都没有禁用,则任何以前的Python的安装将被禁用,但只需卸载蟒蛇/ Miniconda安装应恢复原来的Python安装,也许除了Windows注册表Python\PythonCore
键。
蟒蛇/ Miniconda使得下面的注册表编辑无论安装选项:HKCU\Software\Python\ContinuumAnalytics\
使用下列按键:Help
,InstallPath
,Modules
和PythonPath
- Python官方注册过这些按键,但下Python\PythonCore
。还为Anaconda \ Miniconda注册了卸载信息。除非在安装过程中选择“在Windows中注册”选项,否则它不会创建PythonCore
,因此像Visual Studio的Python Tools这样的集成不会自动看到Anaconda / Miniconda。如果注册蟒蛇/ Miniconda选项被激活,那么我认为您现有的Python Windows注册表项将被改变和卸载可能不会恢复它们。
App\lib\site-packages
和App\Scripts
可以复制到新安装的,但如果没有工作,然后重新安装所有的包可能是必要的。使用pip list
查看包安装了什么,它们的版本。有些是由PortablePython安装的。使用easy_install pip
如果未安装它安装点子。如果OP具有2.7.x,并且想要安装其他版本,例如 <= 2.6.x或> = 3.xx,则可以并排安装不同版本。您必须选择要与*.py
文件关联的Python版本(如果有),以及要在路径中使用的版本,尽管如果使用BASH则应该能够设置具有不同路径的shell 。AFAIK 2.7.x向后兼容2.6.x,因此不需要IMHO并排安装,但是Python-3.xx不向后兼容,因此我的建议是将Python-2.7放在您的路径上并具有通过创建指向可执行文件的快捷方式python3(这是Linux上的常见设置),可以将python-3作为可选版本。Windows上官方的Python默认安装路径是
如果OP不是在更新Python,而只是在更新软件包,则他们可能希望研究virtualenv,以使特定于其开发项目的软件包的不同版本分开。Pip还是更新软件包的好工具。如果软件包使用二进制安装程序,则通常在安装新软件包之前先卸载旧软件包。
我希望这可以消除任何混乱。
C:\Python27
和C:\Python33
,如果你是在Mac上,你会看到/Library/Frameworks/Python/Versions/2.7.x
和/Library/Frameworks/Python/Versions/3.3.x
,如果你是在Linux上,你可能已经拥有两个安装。传统上是使用Python-2.7并将Python-3.3的二进制文件符号链接到python33
。另请参见Python2orPython3和Python 2 vs Python 3。我个人懒得切换到3.3。
C:\Python27_x86
命令行:msiexec /a "python-2.7.11.msi" TARGETDIR="C:\Python27_x86" /qn /l*v python27_x86_install.log
。另一种选择是从源代码构建,或尝试使用Bootstrap Python。
最好的解决方案是在多个路径中安装不同的Python版本。
例如。C:\ Python27(适用于2.7)和C:\ Python33(适用于3.3)。
阅读以获取更多信息:如何在Windows上运行多个Python版本
官方Python .msi安装程序旨在替代:
快照安装程序旨在用较低的微型版本替换任何快照。
任何其他版本不一定兼容,因此与现有版本一起安装。如果您希望卸载旧版本,则需要手动进行。并卸载您拥有的所有第三方模块:
bdist_wininst
软件包(Windows .exe
)安装了任何模块,请在卸载版本之前先将其卸载,否则如果卸载程序具有自定义逻辑,则卸载程序可能无法正常工作setuptools
/的pip
驻留在其中,Lib\site-packages
之后可以删除%APPDATA%/Python/PythonXY/site-packages
并且同样可以删除