Wie starte ich Python 2 und 3 in Windows 7?

Gibt es eine Möglichkeit, Python 3 über eine Installation von Python 2 zu installieren, ohne etwas zu ruinieren? Das Hauptproblem ist, dass ich Code habe, der von “python xxxxx.py abc123” ausgeführt wird. Gibt es eine Möglichkeit, Python 3 zu “python3 xxxx.py abc123” zu ändern? Derselbe Befehlspython ist der Konflikt

Es gibt eine bessere Art der Koexistenz / Start von Python 2 und Python 3 unter Windows. Python 3.3 führte den Python Launcher für Windows ein (siehe http://www.python.org/dev/peps/pep-0397/ ).

Nach der Installation von Python 3.3 werden die py.exe und pyw.exe in Ihr Verzeichnis c:\Windows kopiert, und die Verknüpfungen werden für die Erweiterung .py sodass sie den Launcher verwenden. Standardmäßig wird Python 2 für py script.py gestartet. py -3 script.py startet Python 3. (Dies bedeutet auch, dass der Umgebung kein Pfad für Python hinzugefügt werden muss – das C:\Windows bereits im Pfad.)

Das Beste daran ist, dass #!python2 im Skript das Starten über Python 2 verursacht, das #!python3 das Starten des Skripts über Python 3 bewirkt. Auf diese Weise können Sie Skripte für beide Python-Versionen verwenden und sie als Unified- #!python3 way – py script.py oder indem Sie einfach auf das py script.py klicken.

Es gibt mehr Details, aber das ist im Grunde, was Sie brauchen.

Update: Wenn Sie den Python-Launcher für Windows verwenden, können Sie Ihr Python-Skript auch aus dem cmd Fenster starten, indem Sie > script.py (ohne py – den Namen des Python-Launcher – vor dem Skriptnamen explizit einzugeben) oder sogar durch Eingabe des Namens ohne die Erweiterung .py (also nur > script ).

Auf diese Weise beginnen die Dinge der Unix-Art der Benennung von Skripten zu ähneln (ohne die Erweiterung); Sie müssen jedoch beim Erstellen der Skriptdatei die Erweiterung .py hinzufügen.

(Ja, es ist ein bisschen chaotischer als der Unix-Ansatz. Das ist der Unterschied zwischen den “Think first!” – und den “Sell first!” – Ansätzen der Entwicklungen der Betriebssysteme. Wie auch immer, mein Lob an das Python-Entwicklerteam das Beste aus dem Windows – durch die Freigabe des Python Launcher für Windows.

Nicht sicher, ob es Ihren Bedürfnissen entspricht, aber Sie sollten sich virtualenv anschauen: http://www.virtualenv.org/en/latest/

Dadurch können Sie separate Umgebungen für Python 2 und 3 erstellen (mit dem Flag -p). Wenn Ihr Anwendungsfall etwas ist, für das dies nicht funktionieren würde, aktualisieren Sie die Frage mit einigen weiteren Details und ich bin sicher, dass Sie weitere Vorschläge erhalten werden.

Wenn Sie python3 in einem separaten Verzeichnis installieren, können Sie die ausführbare Datei python 3 auch in python3.exe umbenennen.

Sie müssen Ihre Umgebungsvariable so bearbeiten, dass sie Ihren Python 3- oder Python 2-Pfad enthält.