+1 Daumen
4k Aufrufe

Ich möchte jede Version von Python aufrufen, die ich auf dem Windows-Terminal installiert habe (ich habe 2.7, 3.6 und 3.7). Ich möchte sie mit Python, Python36 und Python37 oder auf andere Weise aufrufen, wenn Sie relevantere Ideen haben. Als ich es jedoch für Python 3.7 versuchte, schien es nicht zu funktionieren :

C:\>set PATH=C:\Program Files\Python 3.7;%PATH%

C:\>set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

C:\>python

Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>


Hier sind meine Umgebungsvariablen:


variables_environnement.png

Avatar von

1 Antwort

+2 Daumen
 
Beste Antwort

Lösung 1: python.exe umbenennen

Wenn man Python 2 und 3 installiert hat und jeweils starten möchte:

1. C:\Python35;C:\Python35\Scripts;C:\Python27;C:\Python27\Scripts als Umgebungsvariable PATH hinzufügen.

2. Öffne das Verzeichnis C:\Python35 und nenne python.exe um zu python3.exe.

3. Öffne das Verzeichnis C:\Python27 und nenne python.exe um zu python2.exe.

4. Computer neu starten.

5. Nun kannst du python2 deinscript.py oder python3 deinscript.py in der Kommandozeile eingeben und so die entsprechende Python-Version starten.

Credits


Lösung 2: PowerShell

Wenn du die PowerShell unter Windows 10 benutzt, kannst du verschiedene Profile anlegen und jede Python-Version einem Profil zuweisen.

1. PowerShell aufrufen und eingeben:

Test-Path $profile

2. Es sollte False erscheinen, da noch kein Profil angelegt wurde. Um ein Profil anzulegen, zuerst eingeben:

New-item -type file -force $profile

Das zeigt den Pfad zur Windows PowerShell, wahrscheinlich: C:\Users\DeinName\Documents\WindowsPowerShell


3. Gehe zu dem Verzeichnis und öffne deine Profildatei (sie wird leer sein):

cd C:\Users\DeinName\Documents\WindowsPowerShell
Notepad .\Microsoft.PowerShell_profile.ps1

4. In Notepad kann man nun die Aliases eintragen, Beispiel:

Set-Alias python27 'C:\Python27\python.exe'
Set-Alias python34 'C:\Python34\python.exe'

Unbedingt auf den richtigen Pfad achten!

Um das jeweilige Profil zu aktivieren, muss man die Execution Policy einstellen. Das Profil wird beim Start der PowerShell als Auswahl angezeigt:

1. Aktuelle Execution Policy anzeigen (sollte das gewünschte "Restricted" anzeigen):

Get-ExecutionPolicy

2. Execution Policy für unser Profil festlegen:

Set-ExecutionPolicy -Scope CurrentUser

3. Es folgt eine Eingabeaufforderung. ExecutionPolicy: ..., dort müssen wir Unrestricted eingeben.

>Execution Policy Change: The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might expose you to the security risks described in the about_Execution_Policies help topic at https:/go.microsoft.com/fwlink/?LinkID=135170. Do you want to change the execution policy?

4. Bestätigen mit Y und Enter drücken

5. PowerShell neu starten und eingeben python27 oder python34. Dies startet nun die gewünschte Python-Version.

Credits

Avatar von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community