Wie aktualisiere ich die Python-Installation in Windows 10?

112

Ich habe einen Python 2.7.11 auf einer meiner LAB-Stationen installiert. Ich möchte Python auf mindestens 3.5 aktualisieren.

Wie soll ich das machen Sollte ich es vorziehen, 2.7.11 vollständig zu deinstallieren und dann die neue zu installieren? Gibt es eine Möglichkeit, es zu aktualisieren? Ist ein Update eine gute Idee?

Moshe S.
quelle
Vielleicht kann Ihnen dieser ältere Beitrag helfen? stackoverflow.com/questions/15102943/how-to-update-python Br.
MikeL
python2 und python3 sollten als unterschiedliche Sprachen behandelt werden, so wie C # sich von C ++ unterscheidet
WhatsThePoint

Antworten:

97

Jede kleinere Version von Python, dh jede 3.x- und 2.x-Version, wird neben anderen Versionen auf Ihrem Computer installiert. Nur Patch-Versionen aktualisieren vorhandene Installationen.

Wenn Sie also Ihr installiertes Python 2.7 behalten möchten, lassen Sie es einfach und installieren Sie eine neue Version mit dem Installationsprogramm. Wenn Sie Python 2.7 entfernen möchten, können Sie es vor oder nach der Installation einer neueren Version deinstallieren - es gibt keinen Unterschied.

Aktuelle Python 3-Installationen werden mit dem py.exeLauncher geliefert, der standardmäßig im Systemverzeichnis installiert ist. Dies macht es über den PATH verfügbar, sodass Sie es automatisch von jeder Shell aus ausführen können, indem Sie pystatt pythonals Befehl verwenden. Dadurch müssen Sie die aktuelle Python-Installation nicht selbst in PATH einfügen. Auf diese Weise können Sie problemlos mehrere Python-Installationen nebeneinander ausführen, ohne dass sie sich gegenseitig stören. Verwenden Sie beim Ausführen einfach den Starter, py script.pyanstatt ihn python script.pyzu verwenden. Sie können eine Version auch angeben, indem Sie beispielsweise eine bestimmte Version verwenden py -3oder py -3.6starten, andernfalls verwendet der Launcher die aktuelle Standardeinstellung (normalerweise die neueste Version 3.x).

Mit dem Launcher können Sie auch Python 2-Skripte ausführen (deren Syntax häufig nicht mit Python 3 kompatibel ist), wenn Sie Ihre Python 2.7-Installation beibehalten möchten. Verwenden Sie einfach py -2 script.py, um ein Skript zu starten.


Bei PyPI-Paketen wird jede Python-Installation mit einem eigenen Ordner geliefert, in dem Module installiert werden. Wenn Sie also eine neue Version installieren und Module verwenden möchten, die Sie für eine frühere Version installiert haben, müssen Sie diese zuerst für die neue Version installieren. Aktuelle Versionen des Installationsprogramms bieten Ihnen auch die Installation an pip. Es ist standardmäßig aktiviert, sodass Sie es bereits pipfür jede Installation haben. Wenn Sie dem PATH nicht explizit eine Python-Installation hinzufügen, können Sie diese jedoch nicht einfach verwenden pip. Zum Glück können Sie dazu auch einfach den py.exeLauncher verwenden: py -m pipLäuft pip. Wenn Sie beispielsweise Beautiful Soup für Python 3.6 installieren möchten, können Sie es ausführen py -3.6 -m pip install beautifulsoup4.

Sack
quelle
1
Wie würden Sie empfehlen, dies auf einer Station zu tun, die ich derzeit für die Entwicklung von Skripten verwende? Übrigens habe ich eine 3.5.2 (Windows 7 64-Bit)
Moshe S.
1
Installieren Sie einfach die neue Version nebeneinander. Die alte Version muss nicht entfernt werden. Mit der alten Version können Sie möglicherweise sogar vorhandene Skripte von Python 2 auf Python 3 migrieren, sodass Sie die ursprünglichen weiterhin ausführen können.
stupsen
1
Das Installationsprogramm gibt Ihnen die Möglichkeit, den PFAD für Sie festzulegen, sodass Sie dies möglicherweise nicht manuell tun müssen. Und ja, Ihre IDE muss aktualisiert werden.
stupsen
1
auch py -3.7-64oderpy -3.7-32
noobninja
1
Hinweis: py ist der Python Launcher für Windows . Oder siehe PEP 397 , das es definiert. Es wird nicht für Linux / Mac installiert.
LightCC
39

Installieren / Aktualisieren von Python mit dem Chocolatey Windows Package Manager

Angenommen, Sie haben Python 2.7.16:

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

... und Sie möchten auf die (jetzt aktuelle) 3.xy-Version aktualisieren. Es gibt eine einfache Möglichkeit, eine parallele Installation von Python 3.xy mithilfe eines Windows-Paketverwaltungstools zu installieren .

Jetzt, da modernes Windows über Paketverwaltung verfügt, haben Debian Linux-Distributionen apt-get und RedHat dnf: Wir können es für uns arbeiten lassen! Es heißt Chocolatey .

Was ist schokoladig?

Chocolatey ist ein skriptfähiges Befehlszeilentool, das auf .NET 4.0 und dem in Visual Studio integrierten Nuget-Paketmanager basiert.

Wenn Sie mehr über Chocolatey erfahren möchten und wissen möchten, warum Sie es verwenden sollten, was einige hier lesen, finden Sie unter https://chocolatey.org/docs/why

Chocolatey installieren

Um den Chocolatey Package Manager zu erhalten, folgen Sie einem Prozess, der unter https://chocolatey.org/docs/installation#installing-chocolatey beschrieben wird.

Ich werde es hier für Sie zusammenfassen. Grundsätzlich gibt es zwei Möglichkeiten: Verwenden der Eingabeaufforderung cmd oder Verwenden der Eingabeaufforderung PowerShell.

CMD Prompt Chocolatey Installation

Starten Sie eine administrative Eingabeaufforderung. Gehen Sie unter Windows 10 folgendermaßen vor:

  • Windows+R
  • Typ cmd
  • Drücken Sie ctrl+ shift+Enter

Wenn Sie keine Administratorrechte für das System haben, besuchen Sie die Chocolatey-Website . Möglicherweise haben Sie kein Pech und können eine begrenzte lokale Installation durchführen, aber das werde ich hier nicht behandeln.

  • Kopieren Sie die folgende Zeichenfolge in Ihre Eingabeaufforderung und geben Sie die Eingabetaste ein:
@"%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 wird wie folgt heruntergeladen und für Sie installiert:

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

Beenden Sie entweder die CMD-Eingabeaufforderung oder geben Sie den folgenden Befehl ein, um die Umgebungsvariablen neu zu laden:

refreshenv

PowerShell Chocolatey Installation

Wenn Sie PowerShell der cmd-Eingabeaufforderung vorziehen, können Sie dies direkt von dort aus tun. Sie müssen PowerShell jedoch anweisen, mit einer ordnungsgemäßen Skriptausführungsrichtlinie ausgeführt zu werden, damit es funktioniert. Unter Windows 10 ist es für mich am einfachsten, Folgendes in die Cortana-Suchleiste neben der Windows-Schaltfläche einzugeben:

PowerShell.exe

Klicken Sie anschließend im angezeigten Menü mit der rechten Maustaste auf die Option "Beste Übereinstimmung" und wählen Sie "Als Administrator ausführen".

Nachdem Sie sich in PowerShell befinden und hoffentlich mit Administratorrechten ausgeführt werden, führen Sie Folgendes aus, um Chocolatey zu installieren:

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

PowerShell lädt Chocolatey für Sie herunter und startet die Installation. Es dauert nur wenige Momente. Es sieht genauso aus wie bei der CMD-Installation, außer vielleicht etwas ausgefallenem farbigem Text.

Beenden Sie entweder PowerShell oder geben Sie den folgenden Befehl ein, um die Umgebungsvariablen neu zu laden:

refreshenv

Python aktualisieren

Der Befehl choco ist derselbe, unabhängig davon, ob Sie PowerShell oder die Eingabeaufforderung cmd verwenden. Starten Sie Ihren Favoriten gemäß den Anweisungen oben. Ich werde die Administrator-Cmd-Eingabeaufforderung verwenden:

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

Im Wesentlichen sagt schokoladig "Hey, Python ist nicht installiert", da Sie von 2.7.x kommen und die 2.7-Version als vollständig separat behandelt wird. Es wird nur gehen Sie die aktuellste Version zu geben, 3.xy (zum Zeitpunkt des Schreibens, 3.7.2, aber das wird in ein paar Monaten ändern):

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

Beenden Sie entweder die Eingabeaufforderung cmd / Powershell und geben Sie sie erneut ein, oder verwenden Sie refresheshenv, und geben Sie py --version ein

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

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

Beachten Sie, dass die letzte Python-Installation jetzt übernommen wird, wenn Sie Python in die Befehlszeile eingeben. Sie können jede Version mit den folgenden Befehlen ausführen:

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

Von hier aus schlage ich vor, dass Sie das Python- Pip- Dienstprogramm verwenden, um alle benötigten Pakete zu installieren. Angenommen, Sie möchten Flask installieren. Die folgenden Befehle aktualisieren zuerst pip und installieren dann 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

... wird den Trick machen. Viel Spaß beim Pythoning!

ggariepy
quelle
Die Kurzversion der Antwort lautet "Chocolatey installieren" und anschließend "Aktualisieren" an der Eingabeaufforderung. Führen Sie dann "Choco Install Python" aus. Anschließend wird die neueste Version von Python installiert. Führen Sie im cmd erneut eine Aktualisierung durch, und Sie sollten die neueste Python von Ihrem cmd ausführen.
Sebastian
Abrufen dieses Fehlers in CMD und POWERSHELL Ausnahme beim Aufrufen von "DownloadString" mit den Argumenten "1": "Die zugrunde liegende Verbindung wurde geschlossen: Beim Senden ist ein unerwarteter Fehler aufgetreten." In Zeile: 1 Zeichen: 104 + Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient) .DownloadString <<<< ('ocolatey.org/install.ps1 ' )) + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: DotNetMethodException
Trustory
Ich habe Windows 7 jede Hilfe, wie man von Python2 auf Python 3 aktualisiert, scheint wie Chocoaltely nicht funktioniert.
vertrauenswürdig
38

Wenn Sie eine Python-Version von 3.xy auf 3.xz (Patch) aktualisieren, rufen Sie einfach die Python-Downloadseite auf, holen Sie sich die neueste Version und starten Sie die Installation. Da Sie Python bereits auf Ihrem Computer installiert haben, werden Sie nach "Jetzt aktualisieren" gefragt. Klicken Sie auf diese Schaltfläche, um die vorhandene Version durch eine neue zu ersetzen. Sie müssen auch einen Computer nach der Installation neu starten.

Geben Sie hier die Bildbeschreibung ein

Wenn Sie ein Upgrade von 3.x auf 3.y (Moll) durchführen, werden Sie mit "Jetzt installieren" aufgefordert. In diesem Fall führen Sie kein Upgrade durch, sondern installieren eine neue Version von Python. Sie können mehr als eine Version auf Ihrem Computer installieren. Sie befinden sich in verschiedenen Verzeichnissen. Wenn Sie mehr als eine Python-Version auf Ihrem Computer haben, müssen Sie py lanucher verwenden , um eine bestimmte Version von Python zu starten.

Zum Beispiel:

py -3.7

oder

py -3.8

Stellen Sie sicher, dass auf Ihrem Computer der Py Launcher installiert ist. Es wird automatisch installiert, wenn Sie die Standardeinstellungen des Windows-Installationsprogramms verwenden. Sie können dies jederzeit überprüfen, wenn Sie im Installationsfenster auf den Link "Installation anpassen" klicken.

Wenn Sie mehrere Python-Versionen auf Ihrem Computer installiert haben und ein Projekt haben, das die vorherige Version von Python in einer virtuellen Umgebung verwendet, z. B. (venv), können Sie Python nur in diesem venv aktualisieren, indem Sie:

python -m venv --upgrade "Pfad Ihrer virtuellen Umgebung"

Zum Beispiel habe ich Python 3.7 in meiner virtuellen ./venv-Umgebung und möchte venv auf Python 3.8 aktualisieren. Ich würde Folgendes tun

python -m venv --upgrade ./venv

Vlad Bezden
quelle
1
@ MosheS.you kann eine Liste veralteter Pakete mit dem folgenden Befehl erhalten: pip list --outdated und aktualisieren Sie dann jedes Paket durch Python -m pip install --upgrade <Ihr Paket>
Vlad Bezden
5
Beim Wechsel von 3.7.2 zu 3.7.4 (64 Bit) unter Windows 10 wird dies nicht angezeigt. Ich sehe "Jetzt installieren", wo "Jetzt
aktualisieren
3
Ich bin gerade von 3.7.3 auf 3.7.5 umgezogen und habe die Meldung "Jetzt aktualisieren" erhalten. Wenn ich versuchen würde, ein Upgrade von 3.7.3 auf 3.8 durchzuführen, würde ich "Jetzt installieren" erhalten.
Tiago Martins Peres 31
1
@Suncatcher Sie haben Recht, das habe ich im Abschnitt "Wenn Sie von 3.x auf 3.y upgraden möchten, dann ..." beschrieben. Bitte lesen Sie die oben.
Vlad Bezden
1
@Suncatcher, danke für das Feedback. Ich habe die Beschreibung aktualisiert.
Vlad Bezden
4

Python 2.x und Python 3.x unterscheiden sich. Wenn Sie eine neuere Version von Python 2 herunterladen möchten, können Sie einfach die neuere Version herunterladen und installieren.

Wenn Sie Python 3 installieren möchten, können Sie Python 3 separat installieren und dann den Pfad für Python 2.x unter Systemsteuerung> Alle Elemente der Systemsteuerung> System> Erweiterte Systemeinstellungen> Umgebungsvariablen in Python 3.x ändern.

Julian Chan
quelle
Ich ziehe es vor, Python 2.7.11 vollständig zu entfernen, da ich nicht vorhabe, es zu unterstützen. Also sollte ich es komplett entfernen. Richtig ? In den "Programmen und Funktionen" wurde Python nicht angezeigt, daher weiß ich nicht, wie ich es entfernen soll. Soll ich pip verwenden und wie? Ist es eine gute Idee, nur den Python-Ordner zu löschen? Was ist mit all den alten Paketen, die damit installiert wurden (falls vorhanden)? Wie kann ich sie auch deinstallieren?
Moshe S.
@ MosheS. Ich glaube nicht, dass es wirklich so viel Platz braucht, aber wenn Sie aufräumen wollen, dann auf jeden Fall. Sie sollten sich alle im selben Ordner befinden. Sie können sie wahrscheinlich über das Programm und die Funktionen der Systemsteuerung deinstallieren. Sowohl mein Python 2.7 als auch mein 3.4 sind da drin. Durch die Deinstallation von dort werden alle Pakete entfernt. Wenn Sie sie wirklich nicht finden können, können Sie versuchen, einfach den gesamten Ordner zu löschen. Wenn Sie Python 3 herunterladen und es nicht funktioniert, bearbeiten Sie den Pfad wie oben beantwortet. Dies ist höchstwahrscheinlich das Hauptproblem, falls vorhanden.
Julian Chan
3

Im Jahr 2019 können Sie mit schokoladig installieren . Öffnen Sie Ihr Cmd oder Ihre Powershell und geben Sie "choco install python" ein.

roscoe_x
quelle
-1

Der einfachste Weg, die neueste Version von Python zu installieren (wenn Sie andere Versionen deinstalliert haben), ist die Eingabe Pythonin PowerShell.

Dadurch wird der Microsoft Store geöffnet und Sie klicken auf die GetSchaltfläche.

Mike Poole
quelle