我从 2012 年初安装了 2.7 版。我无法就是否应该在安装最新版本之前完全卸载并擦除此版本达成共识。
“软”——删除旧版本?硬删除/擦拭旧版本?安装在上面?
我在某处看到了一个特殊的安装/升级过程,它使用 Python 安装的“分段”方法,将不同的版本分开和分开,但可以正常工作。不确定这是否是标准的,事实上的方式。
我还想知道 Revo 是否过于热心,可能会导致清除仍然需要的残留物(如环境/PATH 变量)出现问题。
(Win7 x64,32 位 Python)
我从 2012 年初安装了 2.7 版。我无法就是否应该在安装最新版本之前完全卸载并擦除此版本达成共识。
“软”——删除旧版本?硬删除/擦拭旧版本?安装在上面?
我在某处看到了一个特殊的安装/升级过程,它使用 Python 安装的“分段”方法,将不同的版本分开和分开,但可以正常工作。不确定这是否是标准的,事实上的方式。
我还想知道 Revo 是否过于热心,可能会导致清除仍然需要的残留物(如环境/PATH 变量)出现问题。
(Win7 x64,32 位 Python)
这篇文章现在已经有将近 5 年的历史了!Python-2.7 将在 2020 年停止接收来自 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
创建一个符号链接。然后在Anaconda/Miniconda 根 bin 文件夹中创建另一个符号链接。现在 Anaconda/Miniconda 就像 Ruby RVM 一样。只需使用启用 Anaconda/Miniconda。conda
bin
conda-activate
activate
conda-activate root
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
。Anaconda可以使用以下conda
命令进行更新:
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
安装程序并提供禁用 WindowsPATH
和注册表更改的选项。
因此 Anaconda/Miniconda 可以在不中断现有 Python 安装的情况下安装,具体取决于它的安装方式和安装期间选择的选项。如果使用安装程序并且没有.exe
禁用更改 WindowsPATH
和注册表的选项,则任何以前的 Python 安装都将被禁用,但只需卸载 Anaconda/Miniconda 安装即可恢复原始 Python 安装,可能 Windows 注册表项除外。Python\PythonCore
无论安装选项如何,Anaconda/Miniconda 都会进行以下注册表编辑:HKCU\Software\Python\ContinuumAnalytics\
使用以下键:Help
、InstallPath
和- 官方 Python 也注册这些键,但Modules
在. 还为 Anaconda\Miniconda 注册了卸载信息。除非您在安装过程中选择“使用 Windows 注册”选项,否则它不会创建,因此 Visual Studio 的 Python 工具等集成不会自动看到 Anaconda/Miniconda。如果启用了注册 Anaconda/Miniconda 的选项,那么我认为您现有的 Python Windows 注册表项将被更改,并且卸载可能不会恢复它们。PythonPath
Python\PythonCore
PythonCore
App\lib\site-packages
可以App\Scripts
复制到新安装,但如果这不起作用,则可能需要重新安装所有软件包。用于pip list
查看安装了哪些软件包及其版本。有些是由 PortablePython 安装的。easy_install pip
如果未安装 pip,请使用它来安装。如果 OP 有 2.7.x 并且想要安装不同的版本,例如<=2.6.x 或 >=3.xx,那么并排安装不同的版本就可以了。您必须选择要与文件关联的 Python 版本(如果有)以及您希望在路径上使用的 Python 版本,但如果使用BASH*.py
,您应该能够设置具有不同路径的 shell 。AFAIK 2.7.x 与 2.6.x 向后兼容,因此恕我直言并排安装不是必需的,但是 Python-3.xx 不向后兼容,所以我的建议是将 Python-2.7 放在您的路径上并拥有Python-3 通过创建一个名为 python3 的可执行文件的快捷方式成为可选版本(这是 Linux 上的常见设置)。Windows 上的官方 Python 默认安装路径是
如果 OP 不更新 Python,而只是更新包,他们可能希望研究virtualenv以将特定于其开发项目的不同版本的包分开。Pip也是更新软件包的好工具。如果软件包使用二进制安装程序,我通常会在安装新软件包之前卸载旧软件包。
我希望这可以消除任何困惑。
最好的解决方案是在多个路径中安装不同的 Python 版本。
例如。C:\Python27 用于 2.7,C:\Python33 用于 3.3。
阅读本文了解更多信息:如何在 Windows 上运行多个 Python 版本
官方 Python .msi 安装程序旨在替换:
快照安装程序旨在用较低的微版本替换任何快照。
任何其他版本不一定兼容,因此与现有版本一起安装。如果您想卸载旧版本,则需要手动执行此操作。并卸载您拥有的任何第 3 方模块:
bdist_wininst
包 (Windows .exe
) 中安装了任何模块,请在卸载版本之前将其卸载,否则如果具有自定义逻辑,卸载程序可能无法正常工作setuptools
与/pip
一起安装的模块Lib\site-packages
可以在之后删除%APPDATA%/Python/PythonXY/site-packages
其中并且同样可以删除我一直只是在上面安装新版本,从来没有任何问题。请确保您的路径已更新以指向新版本。