我在一台机器上安装了Python 2.7.11。我想将Python升级至3.5或更高版本。
我应该如何操作? 是否需要先卸载2.7.11再安装新版本? 有没有直接更新的方法?更新是否可行?
我在一台机器上安装了Python 2.7.11。我想将Python升级至3.5或更高版本。
我应该如何操作? 是否需要先卸载2.7.11再安装新版本? 有没有直接更新的方法?更新是否可行?
py.exe
启动器,默认情况下安装在系统目录中。这使其从PATH可用,因此您可以仅使用py
而不是python
作为命令,从任何shell自动运行它。这样,您可以轻松地拥有多个Python安装,而它们之间不会相互干扰。运行时,只需使用py script.py
而不是python script.py
来使用启动器。您还可以使用例如py -3
或py -3.6
指定版本以启动特定版本,否则启动器将使用当前默认版本(通常是最新的3.x)。py -2 script.py
来启动脚本。关于 PyPI 包,每个 Python 安装都有自己的文件夹来安装模块。因此,如果您安装了一个新版本并且想要使用以前版本安装的模块,您需要先为新版本安装它们。当前版本的安装程序也提供了安装 pip
的选项;它已默认启用,因此您已经在每个安装中拥有 pip
。除非您明确将 Python 安装添加到 PATH 中,否则您不能仅使用 pip
。不过,您也可以简单地使用 py.exe
启动器来处理这个问题:py -m pip
运行 pip
。例如,要为 Python 3.6 安装 Beautiful Soup,您可以运行 py -3.6 -m pip install beautifulsoup4
。
py -3.7-64
或 py -3.7-32
。 - noobninja假设你已经安装了Python 2.7.16:
C:\Windows\system32>python --version
python2 2.7.16
如果你想升级到当前的 3.x.y 版本,有一种简单的方法可以使用 Windows 包管理工具安装 Python 3.x.y 的 并行 安装。
现在,由于现代的 Windows 已经有了包管理工具,就像 Debian Linux 发行版有 apt-get,RedHat 有 dnf 一样:我们可以利用它来帮助我们!这叫做Chocolatey。
Chocolatey 是一个基于 .NET 4.0 和 Visual Studio 内置的 nuget 包管理器的可脚本化的命令行工具。
如果你想了解 Chocolatey 及其使用原因,某些读者可能会发现这很有用,请访问https://chocolatey.org/docs/why
要获取 Chocolatey 包管理器,需要遵循https://chocolatey.org/docs/installation#installing-chocolatey 中所描述的过程,
我将在此为您总结。基本上有两个选项:使用 cmd 提示符或使用 PowerShell 提示符。
启动一个管理员命令提示符。 在 Windows 10 上,要执行此操作:
如果您没有系统上的管理员权限,请转到Chocolatey 网站。 您可能不完全没有希望进行有限的本地安装,但我将在此不予介绍。
@"%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"
下面将为您下载并安装Chocolatey:
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 而不是 cmd 提示符,您可以直接使用 PowerShell 进行安装,但是您需要告诉 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
choco命令在PowerShell或cmd提示符下使用方法相同。按照上面的说明启动您最喜欢的。我会使用管理员cmd提示符:
C:\WINDOWS\system32>choco upgrade python -y
简而言之,由于你使用的是2.7.x版本,而chocolatey会告诉你“嘿,Python没有安装”,因为它将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
...就可以搞定了。祝你使用Python愉快!
pip freeze > requirements.txt
命令备份你的Python库(或者使用其他备份方式)python -m venv venv
或自行选择其他方法pip install -r requirements.txt
或自行选择其他方法Python 2.x和Python 3.x是不同的。如果您想下载更新版本的Python 2,可以直接下载并安装新版本。
如果您想安装Python 3,可以单独安装Python 3,然后在控制面板>所有控制面板项目>系统>高级系统设置>环境变量中更改Python 2.x的路径为Python 3.x。
只需安装最新版的Python安装程序,它会自动检测您的Python版本并提示升级Python,然后开始升级。
major.minor.micro
,因此3.x.y
到3.x.z
是如此,但如果您升级了一个次要版本,则会在现有版本旁边安装一个新版本...所以3.a.x
到3.b.x
将保留两个版本3a
和3b
... - D.L