如何在Windows 10中升级Python安装?

时间:2017-07-17 06:33:37

标签: python python-3.x

我在我的一个LAB工作站上安装了Python 2.7.11。我想将Python升级到至少3.5。

我该怎么做? 我是否应该完全卸载2.7.11而不是安装新的? 有没有办法更新它?更新是个好主意吗?

12 个答案:

答案 0 :(得分:44)

每个次要版本的Python,即任何3.x和2.x版本,都将与您计算机上的其他版本并排安装。只有补丁版本才会升级现有安装。

因此,如果您想保持已安装的Python 2.7,那么就让它使用安装程序安装新版本。如果你想摆脱Python 2.7,你可以在安装新版本之前或之后卸载它 - 对此没有任何区别。

当前的Python 3安装附带py.exe启动程序,默认情况下安装在系统目录中。这使它可以从PATH中获得,因此您只需使用py而不是python作为命令,就可以从任何shell自动运行它。这避免了您必须自己将当前的Python安装放入PATH。这样,您可以轻松地并排进行多个Python安装,而不会相互干扰。运行时,只需使用py script.py代替python script.py即可使用启动器。您还可以使用例如py -3py -3.6指定版本以启动特定版本,否则启动器将使用当前默认值(通常是最新的3.x)。

如果决定保留Python 2.7安装,使用启动程序,您还可以运行Python 2脚本(通常与Python 3不兼容)。只需使用py -2 script.py即可启动脚本。

对于PyPI包,每个Python安装都有自己的文件夹,其中安装了模块。因此,如果您安装新版本并且要使用为先前版本安装的模块,则必须先为新版本安装它们。当前版本的安装程序还允许您安装pip;它默认启用,因此您已经为每个安装都pip。除非您明确地向PATH添加Python安装,否则不能仅使用pip。幸运的是,您也可以使用py.exe启动器:py -m pip运行pip。因此,例如,为Python 3.6安装Beautiful Soup,您可以运行py -3.6 -m pip install beautifulsoup4

答案 1 :(得分:11)

如果要升级任何3.x Python版本,只需转到Python downloads page获取最新版本并开始安装。由于您已经在计算机安装程序上安装了Python,因此会提示您“立即升级”。单击该按钮,它将用新版本替换现有版本。安装后,您还必须重新启动计算机。

enter image description here

如果您想从3.x升级到3.y,则系统将提示您“立即安装”。在这种情况下,您不是要升级,而是要安装新版本的Python。您的计算机上可以安装多个版本。它们将位于不同的目录中。如果您的计算机上有多个Python版本,则需要使用py lanucher来启动特定版本的Python。

例如:

  

py -3.7

  

py -3.8

确保在计算机上安装了py launcher。如果您使用Windows Installer的默认设置,它将自动安装。如果您在安装窗口中单击“自定义安装”链接,则始终可以进行检查。

答案 2 :(得分:5)

使用Chocolatey Windows软件包管理器安装/升级Python

假设您拥有Python 2.7.16:

    C:\Windows\system32>python --version
    python2 2.7.16

...,您想升级到(现在)3.x.y版本。有一种简单的方法可以使用Windows软件包管理工具安装Python 3.x.y的 parallel 安装。

现在,现代Windows具有包管理功能,就像Debian Linux发行版具有apt-get一样,而RedHat具有dnf:我们可以为我们使用它了!称为巧克力

什么是巧克力味?

Chocolatey是一个可脚本化的命令行工具,基于.NET 4.0和nuget程序包管理器引入Visual Studio。

如果您想了解Chocolatey以及为什么要使用它,某些阅读此书的人可能会发现这特别有用,请访问https://chocolatey.org/docs/why

安装Chocolatey

要获取Chocolatey Package Manager,请按照https://chocolatey.org/docs/installation#installing-chocolatey

所述的过程进行操作。

我将在这里为您总结。基本上有两个选项:使用cmd提示符或使用PowerShell提示符。

CMD提示巧克力安装

启动管理命令提示符。在Windows 10上,要执行以下操作:

  • Windows + R
  • 键入 cmd
  • ctrl + alt + Enter

如果您没有系统管理员权限,请转到Chocolatey website。您可能并不完全走运,可以执行有限的本地安装,但我不会在这里介绍。

  • 将以下字符串复制到命令提示符中,然后输入Enter:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

将为您下载并安装巧克力,如下所示:

Getting latest version of the Chocolatey package for download.
Getting Chocolatey from https://chocolatey.org/api/v2/package/chocolatey/0.10.11.
Downloading 7-Zip commandline tool prior to extraction.
Extracting C:\Users\blahblahblah\AppData\Local\Temp\chocolatey\chocInstall\chocolatey.zip to C:\Users\blahblahblah\AppData\Local\Temp\chocolatey\chocInstall...
Installing chocolatey on this machine
Creating ChocolateyInstall as an environment variable (targeting 'Machine')
  Setting ChocolateyInstall to 'C:\ProgramData\chocolatey'
WARNING: It's very likely you will need to close and reopen your shell
  before you can use choco.
Restricting write permissions to Administrators
We are setting up the Chocolatey package repository.
The packages themselves go to 'C:\ProgramData\chocolatey\lib'
  (i.e. C:\ProgramData\chocolatey\lib\yourPackageName).
A shim file for the command line goes to 'C:\ProgramData\chocolatey\bin'
  and points to an executable in 'C:\ProgramData\chocolatey\lib\yourPackageName'.

Creating Chocolatey folders if they do not already exist.

WARNING: You can safely ignore errors related to missing log files when
  upgrading from a version of Chocolatey less than 0.9.9.
  'Batch file could not be found' is also safe to ignore.
  'The system cannot find the file specified' - also safe.
chocolatey.nupkg file not installed in lib.
 Attempting to locate it from bootstrapper.
PATH environment variable does not have C:\ProgramData\chocolatey\bin in it. Adding...
WARNING: Not setting tab completion: Profile file does not exist at 'C:\Users\blahblahblah\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'.
Chocolatey (choco.exe) is now ready.
You can call choco from anywhere, command line or powershell by typing choco.
Run choco /? for a list of functions.
You may need to shut down and restart powershell and/or consoles
 first prior to using choco.
Ensuring chocolatey commands are on the path
Ensuring chocolatey.nupkg is in the lib folder

退出 CMD提示符,或键入以下命令以重新加载环境变量:

refreshenv

PowerShell Chocolatey安装

如果您更喜欢PowerShell而不是cmd提示符,则可以从那里直接执行此操作,但是必须告诉PowerShell使用正确的脚本执行策略运行才能使其正常运行。在Windows 10上,我发现最简单的方法是在Windows按钮旁边的Cortana搜索栏中键入以下内容:

PowerShell.exe

下一步,右键单击弹出菜单中的“最佳匹配”选项,然后选择“以管理员身份运行”

现在您正在使用PowerShell,希望以管理员权限运行,请执行以下命令安装Chocolatey:

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

PowerShell将为您下载Chocolatey并启动安装。只需要一点时间。看起来完全就像CMD安装一样,可能保存了一些精美的彩色文本。

退出 PowerShell或键入以下命令以重新加载环境变量:

refreshenv

升级Python

无论您使用PowerShell还是cmd提示符,choco命令都是相同的。按照上述说明启动您喜欢的游戏。我将使用管理员cmd提示符:

C:\WINDOWS\system32>choco upgrade python -y

从本质上讲,Chocolatey会告诉您“嘿,未安装Python”,因为您来自2.7.x,它将2.7版本完全视为 。它只是为您提供最新版本的3.x.y(在撰写本文时为3.7.2,但这会在几个月后更改):

Chocolatey v0.10.11
Upgrading the following packages:
python
By upgrading you accept licenses for the packages.
python is not installed. Installing...

python3 v3.x.y [Approved]
python3 package files upgrade completed. Performing other installation steps.
Installing 64-bit python3...
python3 has been installed.
Installed to: 'C:\Python37' 
  python3 can be automatically uninstalled.
Environment Vars (like PATH) have changed. Close/reopen your shell to
 see the changes (or in powershell/cmd.exe just type `refreshenv`).
 The upgrade of python3 was successful.
  Software installed as 'exe', install location is likely default.

python v3.x.y [Approved]
python package files upgrade completed. Performing other installation steps.
 The upgrade of python was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

Chocolatey upgraded 2/2 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

退出cmd / Powershell提示符并重新输入,或者使用refreshenv然后键入py --version

C:\Windows\System32>refreshenv
Refreshing environment variables from registry for cmd.exe. Please wait...Finished..

C:\Windows\system32>py --version
Python 3.7.2

请注意,当您在命令行中键入Python时,最新的Python安装现在将接管。您可以使用以下命令来运行任一版本:

py -2
Python 2.7.16 (v2.7.16:413a49145e, Mar  4 2019, 01:37:19) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

C:\>py -3
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>exit()
C:\>

从这里,我建议您使用Python pip 实用程序安装所需的任何软件包。例如,假设您要安装Flask。下面的命令首先升级pip,然后安装Flask

C:\>py -3 -m pip install --upgrade pip
Collecting pip
  Downloading https://files.pythonhosted.org/packages/d8/f3/413bab4ff08e1fc4828dfc59996d721917df8e8583ea85385d51125dceff/pip-19.0.3-py2.py3-none-any.whl (1.4MB)
    100% |████████████████████████████████| 1.4MB 1.6MB/s
Installing collected packages: pip
  Found existing installation: pip 18.1
    Uninstalling pip-18.1:
      Successfully uninstalled pip-18.1
Successfully installed pip-19.0.3

c:\>py -3 -m pip install Flask

...将解决问题。快乐的Pythoning!

答案 3 :(得分:3)

Python 2.x和Python 3.x是不同的。如果您想下载更新版本的Python 2,您可以下载并安装更新版本。

如果要安装Python 3,可以单独安装Python 3,然后在控制面板中将Python 2.x的路径更改为Python 3.x; <控制面板的所有项目>系统&gt;高级系统设置&gt;环境变量。

答案 4 :(得分:1)

只需安装python最新版本的安装程序,它会自动检测您的python版本并说升级python并开始升级

答案 5 :(得分:1)

对我来说,一种快速而轻松的方法是执行以下操作:

  1. 在我受影响的环境中执行pip freeze > requirements.txt(或任何您想要备份需求的方法)
  2. 删除旧版本的 Python(在我的例子中是 3.8)
  3. 删除关联的环境
  4. 安装新版本(在我的例子中是 3.9.5)
  5. 重新创建我的环境 python -m venv venv 或您希望的任何方式
  6. 重新安装我的插件/应用程序 pip install -r requirements.txt 或按照您的意愿安装

答案 6 :(得分:0)

您可以使用 pyenv。它让你可以轻松地在所有版本的 python 之间切换。

答案 7 :(得分:-1)

在2019年,您可以使用chocolatey安装。打开您的cmd或powershell,输入“ choco install python”。

答案 8 :(得分:-1)

我能够使用以下命令执行 PowerShell,并且 python 升级没有问题。 python -m pip install --upgrade pip 请看图

答案 9 :(得分:-2)

您可以使用pip升级软件包。它也非常简单,也值得推荐。

pip install python --upgradepip install python -U

您无需卸载python27。只需设置您希望用作主要版本的版本的路径并使用它。参考:点击here

如果你处于学习阶段,肯定升级是一个好主意。

答案 10 :(得分:-3)

使用cmd使用命令python -m pip install --upgrade pip更新现有的python版本非常简单。 它将更新您的python版本。

答案 11 :(得分:-4)

python -m pip install --upgrade pip