Instalowanie / aktualizowanie Pythona za pomocą Chocolatey Windows Package Manager
Powiedzmy, że masz Pythona 2.7.16:
C:\Windows\system32>python --version
python2 2.7.16
... i chcesz dokonać aktualizacji do (obecnie aktualnej) wersji 3.xy. Istnieje prosty sposób na zainstalowanie równoległej instalacji języka Python 3.xy za pomocą narzędzia do zarządzania pakietami systemu Windows.
Teraz, gdy nowoczesny system Windows ma zarządzanie pakietami, podobnie jak dystrybucje Debiana Linux mają apt-get, a RedHat ma dnf: możemy to dla nas uruchomić! Nazywa się Chocolatey .
Co to jest Chocolatey?
Chocolatey to skryptowalne narzędzie wiersza poleceń, które jest oparte na .NET 4.0 i menedżerze pakietów NuGet wbudowanym w Visual Studio.
Jeśli chcesz dowiedzieć się więcej o Chocolatey i dlaczego jej używać, co dla niektórych osób czytających to może być szczególnie przydatne, przejdź do https://chocolatey.org/docs/why
Instalowanie Chocolatey
Aby otrzymać Chocolatey Package Manager, postępuj zgodnie z procesem opisanym na https://chocolatey.org/docs/installation#installing-chocolatey ,
Podsumuję to dla Ciebie tutaj. Istnieją zasadniczo dwie opcje: użycie polecenia cmd lub użycie polecenia PowerShell.
CMD Szybka instalacja Chocolatey
Uruchom administracyjny wiersz polecenia. Aby to zrobić w systemie Windows 10:
- Windows+R
- Wpisz cmd
- Naciśnij ctrl+ shift+Enter
Jeśli nie masz uprawnień administratora w systemie, przejdź do witryny Chocolatey . Możesz nie mieć szczęścia i możesz przeprowadzić ograniczoną instalację lokalną, ale nie omówię tego tutaj.
- Skopiuj poniższy ciąg do wiersza poleceń i wpisz 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"
Chocolatey zostanie pobrany i zainstalowany, jak poniżej:
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
Albo Wyjdź monitu CMD lub wpisz następujące polecenie, aby odświeżyć zmienne środowiskowe:
refreshenv
Instalacja PowerShell Chocolatey
Jeśli wolisz PowerShell od monitu cmd, możesz to zrobić bezpośrednio z tego miejsca, jednak będziesz musiał powiedzieć PowerShell, aby działał z odpowiednią polityką wykonywania skryptu, aby działał. W systemie Windows 10 najprostszym sposobem, jaki znalazłem, jest wpisanie następującego wpisu w pasku wyszukiwania Cortana obok przycisku Windows:
PowerShell.exe
Następnie kliknij prawym przyciskiem myszy opcję „Najlepsze dopasowanie” w wyskakującym menu i wybierz opcję „Uruchom jako administrator”
Teraz, gdy jesteś w PowerShell, miejmy nadzieję, że masz uprawnienia administratora, wykonaj następujące czynności, aby zainstalować Chocolatey:
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
PowerShell pobierze dla Ciebie Chocolatey i uruchomi instalację. Zajmie to tylko kilka chwil. Wygląda dokładnie jak instalacja CMD, z wyjątkiem być może jakiegoś fantazyjnego kolorowego tekstu.
Albo Wyjście PowerShell lub wpisz następujące polecenie, aby odświeżyć zmienne środowiskowe:
refreshenv
Uaktualnianie Pythona
Polecenie choco jest takie samo, niezależnie od tego, czy używasz programu PowerShell, czy polecenia cmd. Uruchom swój ulubiony, postępując zgodnie z instrukcjami jak powyżej. Użyję polecenia cmd administratora:
C:\WINDOWS\system32>choco upgrade python -y
Zasadniczo, chocolatey powie ci „Hej, Python nie jest zainstalowany”, ponieważ pochodzisz z 2.7.xi traktuje wersję 2.7 jako całkowicie oddzielną. Jest tylko zamiar dać Ci najbardziej aktualną wersję, 3.xy (jak to pisze, 3.7.2, ale to się zmieni w ciągu kilku miesięcy):
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).
Albo wyjść z cmd / PowerShell szybka i ponownie wprowadzić go lub wykorzystanie refreshenv następnie wpisz 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
Zauważ, że najnowsza instalacja Pythona przejmie teraz kontrolę, gdy wpiszesz Python w wierszu poleceń. Możesz uruchomić każdą wersję, używając następujących poleceń:
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:\>
Odtąd sugeruję użycie narzędzia pip Python do zainstalowania potrzebnych pakietów. Na przykład, powiedzmy, że chcesz zainstalować Flask. Poniższe polecenia najpierw zaktualizuj pip, a następnie zainstaluj 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
...da rade. Miłego Pythona!