Ich hatte zwei Versionen von Python auf meinem Computer installiert (Versionen 2.6 und 2.5). Ich möchte 2.6 für ein Projekt und 2.5 für ein anderes ausführen.
Wie kann ich angeben, welche ich verwenden möchte?
Ich arbeite an Windows XP SP2.
python
windows
python-3.x
compatibility
python-2.x
Bilal Basharat
quelle
quelle
Antworten:
Das Ausführen einer anderen Python-Kopie ist so einfach wie das Starten der richtigen ausführbaren Datei. Sie erwähnen, dass Sie eine Python-Instanz über die Befehlszeile durch einfaches Eingeben gestartet haben
python
.Unter Windows wird die
%PATH%
Umgebungsvariable durchsucht und nach einer ausführbaren Datei gesucht, entweder nach Batchdatei (.bat
), Befehlsdatei (.cmd
) oder einer anderen ausführbaren Datei (dies wird von derPATHEXT
Umgebungsvariablen gesteuert ), die dem angegebenen Namen entspricht. Wenn die richtige Datei zum Ausführen gefunden wird, wird die Datei ausgeführt.Wenn Sie nun zwei Python-Versionen 2.5 und 2.6 installiert haben, enthält der Pfad beide Verzeichnisse. So etwas wie
PATH=c:\python\2.5;c:\python\2.6
Windows überprüft den Pfad nicht mehr, wenn eine Übereinstimmung gefunden wird.Was Sie wirklich tun müssen, ist, eine oder beide Anwendungen wie
c:\python\2.5\python.exe
oder explizit aufzurufenc:\python\2.6\python.exe
.Die andere Alternative besteht darin, eine Verknüpfung zu dem jeweiligen
python.exe
aufrufenden einen von ihnenpython25
und dem anderen zu erstellenpython26
. Sie können dann einfachpython25
auf Ihrer Befehlszeile ausführen .quelle
Hinzufügen von zwei weiteren Lösungen für das Problem:
#! c:\[path to Python 2.5]\python.exe
- für Skripte, die mit Python 2.5 ausgeführt werden sollen#! c:\[path to Python 2.6]\python.exe
- für Skripte, die mit Python 2.6 ausgeführt werden sollenoder anstatt den
python
Befehl auszuführen, führen Sie pylauncher command (py
) aus und geben Sie an, welche Python-Version Sie möchten.py -2.6
- Version 2.6py -2
- zuletzt installierte Version 2.xpy -3.4
- Version 3.4py -3
- zuletzt installierte Version 3.x.virtualenv -p c:\[path to Python 2.5]\python.exe [path where you want to have virtualenv using Python 2.5 created]\[name of virtualenv]
virtualenv -p c:\[path to Python 2.6]\python.exe [path where you want to have virtualenv using Python 2.6 created]\[name of virtualenv]
beispielsweise
virtualenv -p c:\python2.5\python.exe c:\venvs\2.5
virtualenv -p c:\python2.6\python.exe c:\venvs\2.6
Dann können Sie das erste aktivieren und so mit Python 2.5 arbeiten.
c:\venvs\2.5\activate
Wenn Sie zu Python 2.6 wechseln möchten, tun Sie dies
quelle
c:\venvs\2.5\scripts\activate
. Dies ist unter Windows 10 der Fall, wenn dies einen Unterschied macht. Davon abgesehen funktioniert es wie ein Zauber, danke.Ab Python 3.3 gibt es den offiziellen Python-Launcher für Windows ( http://www.python.org/dev/peps/pep-0397/ ). Jetzt können Sie die verwenden
#!pythonX
, um die gewünschte Version des Interpreters auch unter Windows zu ermitteln. Weitere Details finden Sie in meinem anderen Kommentar oder lesen Sie den PEP 397.Zusammenfassung: Die
py script.py
Starts der Python - Version in angegeben#!
oder Python 2 , wenn#!
fehlt. Daspy -3 script.py
startet den Python 3.quelle
.py
Erweiterung fest. Der Launcher selbst ist inC:\Windows
dem bereits installiertPATH
. Auf diese Weise muss auch diePATH
Variable nicht geändert werden.Gemäß @alexander können Sie eine Reihe symbolischer Links wie unten erstellen. Platzieren Sie sie an einer Stelle, die in Ihrem Pfad enthalten ist, damit sie leicht aufgerufen werden können
Solange sich c: \ bin oder wo immer Sie sie platziert haben, auf Ihrem Weg befindet, können Sie jetzt gehen
quelle
mklink
ist nur nativ in Windows Vista / 2008 + verfügbar. Unter XP und Server 2003 kann stattdessen ein "Hardlink" erstellt werdenfsutil hardlink create <new filename> <existing filename>
, indem der <neue Dateiname> verwendet und an eine beliebige Stelle in Ihrem Pfad verschoben wird. Hardlinks funktionieren jedoch nur auf demselben Laufwerk.Installieren Sie Python
Umgebungsvariable
PYTHON2_HOME: C:\Python27
PYTHON3_HOME: C:\Python36
Path: %PYTHON2_HOME%;%PYTHON2_HOME%\Scripts;%PYTHON3_HOME%;%PYTHON3_HOME%\Scripts;
Datei umbenennen
Pip
python2 -m pip install package
python3 -m pip install package
quelle
python
Befehl für das Betriebssystem verwirrend.Zum Beispiel für den Versionstyp 3.6
py -3.6
. Wenn Sie auch 32-Bit- und 64-Bit-Versionen haben, können Sie einfachpy -3.6-64
oder eingebenpy -3.6-32
.quelle
py
ausführbare Datei - ist es eine reine Windows-Ergänzung? Ist es möglich, dies in ein plattformübergreifendes Befehlszeilenskript zu integrieren, das oben steht:#!/usr/bin/env python3
zum Beispiel?Wenn Sie Python installieren, werden andere Installationen anderer Hauptversionen nicht überschrieben. Durch die Installation von Python 2.5.x wird Python 2.6.x nicht überschrieben, obwohl durch die Installation von 2.6.6 2.6.5 überschrieben wird.
Sie können es also einfach installieren. Dann rufen Sie die gewünschte Python-Version auf. Beispielsweise:
für Python 2.5 unter Windows und
für Python 2.6 unter Windows oder
oder
unter
WindowsUnix (einschließlich Linux und OS X).Bei der Installation unter Unix (einschließlich Linux und OS X) wird ein allgemeiner
python
Befehl installiert, der der letzte ist, den Sie installiert haben. Dies ist meistens kein Problem, da die meisten Skripte explizit /usr/local/bin/python2.5 oder etwas anderes aufrufen, um sich dagegen zu schützen. Aber wenn Sie das nicht wollen und wahrscheinlich auch nicht, können Sie es so installieren:Beachten Sie die "Altinstallation", die bedeutet, dass sie installiert wird , den Befehl jedoch nicht ersetzt
python
.Unter Windows erhalten Sie meines Wissens keinen globalen
python
Befehl, daher ist dies kein Problem.quelle
C:\Python2.5
oderC:\Python2.6
in IhrerPATH
Umgebungsvariablen angezeigt wird, wird die entsprechende Version von Python zum Standard, es sei denn, Sie überschreiben sie, indem Sie explizit einen anderen Pfad zur EXE-Datei angeben , die Sie verwenden möchten.Ich kann das pyenv-win- Projekt nur empfehlen .
Dank kirankotari ‚s Arbeit, jetzt haben wir eine Windows - Version von pyenv.
quelle
Hier ist ein kurzer Hack:
C:\Users\Your name
)name_of_your_shortcut.lnk
(ich benutzep27.lnk
)quelle
cp c: \ python27 \ bin \ python.exe als python2.7.exe
cp c: \ python34 \ bin \ python.exe als python3.4.exe
Sie befinden sich alle im Systempfad. Wählen Sie die Version aus, die Sie ausführen möchten
quelle
Verwenden einer Batch-Datei zum Wechseln, einfach und effizient unter Windows 7. Ich verwende Folgendes:
Im Dialogfeld "Umgebungsvariable" (C: \ Windows \ System32 \ SystemPropertiesAdvanced.exe)
Im Abschnitt Benutzervariablen
% pathpython% zur Pfadumgebungsvariablen hinzugefügt
Verweise auf Python-Pfade wurden entfernt
Im Abschnitt Systemvariablen
Ich habe Batch-Dateien für jede Python-Installation erstellt (Beispiel für 3.4 x64
Name = SetPathPython34x64 !!! ToExecuteAsAdmin.bat ;-) nur um sich zu erinnern.
Inhalt der Datei =
Um zwischen Versionen zu wechseln, führe ich die Batchdatei im Admin-Modus aus.
!!!!! Die Änderungen werden für die Eingabeaufforderungsfenster SUBSEQUENT OPENED wirksam. !!!
Ich habe also die genaue Kontrolle darüber.
quelle
Der einfachste Weg, mehrere Versionen von Python unter Windows auszuführen, wird im Folgenden wie folgt beschrieben: -
1) Laden Sie die neuesten Versionen von Python von python.org/downloads herunter, indem Sie die entsprechende Version für Ihr System auswählen.
2) Führen Sie das Installationsprogramm aus und wählen Sie Python 3.x zum Pfad hinzufügen, um den Pfad in Python 3 automatisch festzulegen (Sie müssen nur das Kontrollkästchen aktivieren). Für Python 2 offen up Installer Ihre Python 2, wählen , was auch immer Vorlieben Sie wollen , aber nur zu Satz erinnern Add python.exe auf Weg zu Wird auf der lokalen Festplatte installiert , nun direkt neben klicken und für den Installateur bis zum Ende warten.
3) Wenn beide Installationen abgeschlossen sind. Rechtsklick auf meinem Computer - Gehen Sie zu Eigenschaften - Erweiterte Systemeinstellungen wählen - Zum Umgebungsvariablen - Klicken Sie auf Neues unter Systemvariablen und fügen Sie eine neue Systemvariable mit Variablennamen als PY_PYTHON und setzen Sie diese Variable Wert auf 3 . Klicken Sie nun auf OK und Sie sollten fertig sein.
4) Um dies zu testen, öffnen Sie die Eingabeaufforderung . Sobald Sie dort Art sind Python oder py , sollten Sie eröffnen python3 .
5) Beenden Sie nun python3, indem Sie exit () eingeben . Geben Sie nun py -2 ein , um Python 2 zu öffnen.
Wenn nichts davon funktioniert, starten Sie den Computer neu. Wenn das Problem weiterhin besteht, deinstallieren Sie alles und wiederholen Sie die Schritte.
Vielen Dank.
quelle
In Anaconda Navigator können Sie verschiedene Python-Entwicklungsumgebungen grafisch erstellen. Ich hatte das gleiche Problem bei der Arbeit mit verschiedenen Python-Versionen, daher habe ich mit anaconda navigator verschiedene Python-Entwicklungsumgebungen erstellt und in jeder Umgebung unterschiedliche Python-Versionen verwendet.
Hier ist die Hilfedokumentation dazu.
https://docs.anaconda.com/anaconda/navigator/tutorials/manage-environments/
quelle
Mit dem Rapid Environment Editor können Sie das Verzeichnis der gewünschten Python-Installation nach oben verschieben. Um beispielsweise Python aus dem Verzeichnis c: \ Python27 zu starten, stellen Sie sicher, dass sich das Verzeichnis c: \ Python27 vor oder über dem Verzeichnis c: \ Python36 in der Umgebungsvariablen Path befindet. Nach meiner Erfahrung wird die erste ausführbare Python-Datei in der Path-Umgebung ausgeführt. Zum Beispiel habe ich MSYS2 mit Python27 installiert und da ich C: \ MSYS2 zum Pfad vor C: \ Python36 hinzugefügt habe, wird die Datei python.exe aus dem Ordner C: \ MSYS2 .... ausgeführt.
quelle
Rufen Sie einfach die richtige ausführbare Datei auf
quelle
python
die Shell zu betreten, versuchen Sie espython2.5
oderpython2.6
. Ich bin kein Windows-Benutzer, aber unter Unix / usr / bin / python ist normalerweise ein Alias für die vollqualifizierte ausführbare Datei. Ich gehe davon aus, dass Python in Windows auf ähnliche Weise installiert wird