Hoe upgrade ik de Python-installatie in Windows 10?

Ik heb een Python 2.7.11 geïnstalleerd op een van mijn LAB-stations. Ik wil graag Python upgraden naar minimaal 3.5.

Hoe moet ik dat doen?
Moet ik 2.7.11 liever volledig de-installeren en dan de nieuwe installeren?
Is er een manier om het te updaten? Is een update een goed idee?


Antwoord 1, autoriteit 100%

Elke secundaire versie van Python, dat wil zeggen elke 3.x- en 2.x-versie, wordt naast andere versies op uw computer geïnstalleerd. Alleen patchversies zullen bestaande installaties upgraden.

Dus als je je geïnstalleerde Python 2.7 wilt behouden, laat het dan en installeer een nieuwe versie met behulp van het installatieprogramma. Als je van Python 2.7 af wilt, kun je het voor of na het installeren van een nieuwere versie verwijderen. Hier is geen verschil in.

Huidige Python 3-installaties worden geleverd met het py.exe-opstartprogramma, dat standaard in de systeemmap is geïnstalleerd. Dit maakt het beschikbaar vanaf het PATH, dus je kunt het automatisch vanuit elke shell uitvoeren door gewoon py te gebruiken in plaats van python als de opdracht. Dit voorkomt dat je de huidige Python-installatie zelf in PATH moet zetten. Op die manier kun je gemakkelijk meerdere Python-installaties naast elkaar hebben zonder dat ze elkaar storen. Gebruik tijdens het uitvoeren gewoon py script.py in plaats van python script.py om de launcher te gebruiken. U kunt ook een versie specificeren door bijvoorbeeld py -3 of py -3.6 te gebruiken om een ​​specifieke versie te starten, anders gebruikt het opstartprogramma de huidige standaard (wat meestal de laatste 3.x).

Met het opstartprogramma kunt u ook Python 2-scripts uitvoeren (die vaak syntaxis incompatibel zijn met Python 3), als u besluit uw Python 2.7-installatie te behouden. Gebruik gewoon py -2 script.py om een ​​script te starten.


Wat betreft PyPI-pakketten, elke Python-installatie wordt geleverd met een eigen map waarin modules worden geïnstalleerd. Dus als u een nieuwe versie installeert en u wilt modules gebruiken die u voor een vorige versie hebt geïnstalleerd, dan moet u deze eerst installeren voor de nieuwe versie. Huidige versies van het installatieprogramma bieden u ook de mogelijkheid om pip te installeren; het is standaard ingeschakeld, dus je hebt al pip voor elke installatie. Tenzij je expliciet een Python-installatie aan het PATH toevoegt, kun je echter niet zomaar pip gebruiken. Gelukkig kun je hiervoor ook gewoon de py.exe launcher gebruiken: py -m pip voert pip uit. Als u bijvoorbeeld Beautiful Soup voor Python 3.6 wilt installeren, kunt u py -3.6 -m pip install beautifulsoup4 uitvoeren.


Antwoord 2, autoriteit 64%

Als je een 3.xy naar 3.xz (patch) Python-versie upgradet, ga dan naar Python-downloads pagina download de nieuwste versie en start de installatie. Aangezien Python al op uw machine is geïnstalleerd, zal het installatieprogramma u vragen om “Nu upgraden”. Klik op die knop en het zal de bestaande versie vervangen door een nieuwe. U zult na de installatie ook een computer opnieuw moeten opstarten.

voer hier de afbeeldingsbeschrijving in

Als u een upgrade van 3.x naar 3.y (klein) uitvoert, wordt u gevraagd “Nu installeren”. In dit geval voert u geen upgrade uit, maar installeert u een nieuwe versie van Python. U kunt meer dan één versie op uw computer hebben geïnstalleerd. Ze bevinden zich in verschillende mappen. Als je meer dan één Python-versie op je computer hebt, moet je py lanucher om een ​​specifieke versie van Python te starten.

Bijvoorbeeld:

py -3.7

of

py -3.8

Zorg ervoor dat py launcher op uw computer is geïnstalleerd. Het wordt automatisch geïnstalleerd als u de standaardinstellingen van Windows Installer gebruikt. U kunt het altijd controleren als u op de link “Installatie aanpassen” in het installatievenster klikt.

Als je meerdere Python-versies op je machine hebt geïnstalleerd en je hebt een project dat de vorige versie van Python gebruikt met een virtuele omgeving, b.v. (venv) je kunt Python alleen in die venv upgraden met:

python -m venv –upgrade “uw virtuele omgevingspad”

Ik heb bijvoorbeeld Python 3.7 in mijn ./venv virtuele omgeving en ik wil venv upgraden naar Python 3.8, ik zou het volgende doen

python -m venv –upgrade ./venv


Antwoord 3, autoriteit 40%

Python installeren/upgraden met behulp van Chocolatey Windows Package Manager

Stel dat je Python 2.7.16 hebt:

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

…en u wilt upgraden naar de (nu huidige) 3.x.y-versie. Er is een eenvoudige manier om een ​​parallelle installatie van Python 3.x.y te installeren met behulp van een Windows pakketbeheertool.

Nu moderne Windows pakketbeheer heeft, net zoals Debian Linux-distributies apt-get hebben, en RedHat dnf heeft: we kunnen het voor ons aan het werk zetten! Het heet Chocoladey.

Wat is Chocolatey?

Chocolatey is een scriptbare opdrachtregeltool die is gebaseerd op .NET 4.0 en de nugetpakketbeheerder die is ingebouwd in Visual Studio.

Als je meer wilt weten over Chocolatey en waarom je het moet gebruiken, wat sommigen hier die dit lezen misschien bijzonder nuttig vinden, ga dan naar https://chocolatey.org/docs/why

Chocolade installeren

Om de Chocolatey Package Manager te krijgen, volgt u een proces dat wordt beschreven op https://chocolatey .org/docs/installation#installing-chocolatey,

Ik zal het hier voor je samenvatten. Er zijn in principe twee opties: de cmd-prompt gebruiken of de PowerShell-prompt gebruiken.

CMD-prompt Chocolatey-installatie

Lanceer een administratieve opdrachtprompt. Op Windows 10, om dit te doen:

  • Windows+R
  • Typ cmd
  • Druk op ctrl+shift+Enter

Als u geen beheerdersrechten op het systeem heeft, gaat u naar de Chocolatey-website. Je hebt misschien niet helemaal pech en kunt een beperkte lokale installatie uitvoeren, maar dat ga ik hier niet bespreken.

  • Kopieer de onderstaande tekenreeks naar uw opdrachtprompt en typ 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 wordt als volgt voor u gedownload en geïnstalleerd:

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

Ofwel Sluit de CMD-prompt af of typ de volgende opdracht om de omgevingsvariabelen opnieuw te laden:

refreshenv

PowerShell Chocolatey-installatie

Als u PowerShell verkiest boven de cmd-prompt, kunt u dit rechtstreeks vanaf daar doen, maar u moet PowerShell vertellen dat het moet worden uitgevoerd met een correct scriptuitvoeringsbeleid om het te laten werken. In Windows 10 is de eenvoudigste manier die ik heb gevonden om dit te doen, het volgende in de Cortana-zoekbalk naast de Windows-knop te typen:

PowerShell.exe

Klik vervolgens met de rechtermuisknop op de ‘Best Match’-keuze in het menu dat verschijnt en selecteer ‘Als administrator uitvoeren’

Nu u zich in PowerShell bevindt, hopelijk met beheerdersrechten, voert u het volgende uit om Chocolatey te installeren:

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

PowerShell zal Chocolatey voor u downloaden en de installatie starten. Het duurt maar enkele ogenblikken. Het lijkt precies op de CMD-installatie, behalve misschien wat mooie gekleurde tekst.

Ofwel Sluit PowerShell af of typ de volgende opdracht om de omgevingsvariabelen opnieuw te laden:

refreshenv

Python upgraden

De choco-opdracht is hetzelfde, of u nu PowerShell of de cmd-prompt gebruikt. Start uw favoriet met behulp van de instructies zoals hierboven. Ik gebruik de cmd-prompt van de beheerder:

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

In wezen zal chocolatey je vertellen: “Hé, Python is niet geïnstalleerd” aangezien je van 2.7.x komt en het de 2.7-versie als volledig apart behandelt. Het geeft u alleen de meest recente versie, 3.x.y (op het moment van schrijven, 3.7.2, maar dat zal over een paar maanden veranderen):

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).

Ofwel verlaat de cmd/Powershell-prompt en voer deze opnieuw in, of gebruik refreshenv en typ vervolgens 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

Houd er rekening mee dat de meest recente Python-installatie het nu overneemt wanneer u Python typt op de opdrachtregel. U kunt beide versies uitvoeren door de volgende opdrachten te gebruiken:

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:\>

Vanaf hier raad ik je aan het Python pip hulpprogramma te gebruiken om alle pakketten te installeren die je nodig hebt. Laten we bijvoorbeeld zeggen dat u Flask wilt installeren. De onderstaande commando’s upgraden eerst pip en installeren vervolgens 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

…zal het lukken. Veel Pythoning!


Antwoord 4, autoriteit 3%

Python 2.x en Python 3.x zijn verschillend. Als je een nieuwere versie van Python 2 wilt downloaden, kun je gewoon de nieuwere versie downloaden en installeren.

Als u Python 3 wilt installeren, kunt u Python 3 afzonderlijk installeren en vervolgens het pad voor Python 2.x wijzigen in Python 3.x in Configuratiescherm > Alle onderdelen van het Configuratiescherm > Systeem > Geavanceerde systeeminstellingen > Omgevingsvariabelen.


Antwoord 5, autoriteit 2%

In 2019 kun je installeren met chocolatey. Open je cmd of powershell, typ “choco install python”.


Antwoord 6

Installeer gewoon het installatieprogramma van de nieuwste versie van python, het zal automatisch uw python-versie detecteren en zal zeggen upgrade python en begint met upgraden


Antwoord 7

Een snelle en pijnloze manier voor mij was om het volgende te doen:

  1. Voer een pip freeze > requirements.txt op mijn getroffen omgevingen (of welke methode u ook wilt om een ​​back-up van uw vereisten te maken)
  2. Verwijder de oude versie van Python (in mijn geval was het 3.8)
  3. Verwijder de bijbehorende omgevingen
  4. Installeer de nieuwe versie (3.9.5 in mijn geval)
  5. Maak mijn omgevingen python -m venv venv of hoe je maar wilt
  6. Installeer mijn plug-ins/apps pip install -r requirements.txt opnieuw of hoe je maar wilt

Antwoord 8

Je kunt pyenv gebruiken. Hiermee kunt u eenvoudig schakelen tussen alle versies van python.


Antwoord 9

Ik kon PowerShell uitvoeren met de volgende opdracht en python werd zonder problemen geüpgraded. python -m pip install –upgrade pip zie afbeelding


Antwoord 10

python -m pip install –upgrade pip

LEAVE A REPLY

Please enter your comment!
Please enter your name here

six + eighteen =

Other episodes