Ich arbeite unter Windows.
Wenn ich ein Python Skript "einfach so" ausführe, funktioniert das auch. Allerdings ist mir nicht klar, wo und wie das dabei verwendete Environment festgelegt wird.
Code: Alles auswählen
import sys
print(sys.version)
print("\n".join(sys.path))
input()
3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)]
D:\Users\ggoer\OneDrive\Python
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\python37.zip
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\DLLs
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages
So weit, so gut.
Aber wie entscheidet Windows, dass es ausgerechnet dieses Environment verwenden soll?
Ich dachte, das steht vielleicht in der Windows-Umgebungsvariablen. Aber ich kann das Verzeichnis weder in der Systemvariablen "Path" noch in der Benutzervariablen "Path" finden.
Im Visual Studio werden mir 4 Environments angezeigt:
- Anaconda 5.2.0
Microsoft Machine Learning Server 4.5.12.0
Python 3.7 (32-bit)
Python 3.7 (64-bit)
Alle Environments werden da nämlich auch nicht angezeigt, so fehlen:
3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03) [MSC v.1900 64 bit (AMD64)]
c:\users\ggoer\azuredatastudio-python\0.0.1\python.exe
3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)]
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICES\python.exe
Wie lege ich explizit fest, welche Python Umgebung vom cmd verwendet werden sollen?
Und da man aus VS heraus PowerShell öffnen kann, um damit den Aufruf mit Argumenten zu testen (wie, weiß ich noch nicht, da muss ich mich auch noch einlesen), stellt sich bestimmt auch die Frage, wie man für PowerShell-Aufrufe von Python-Scripten die richtige Umgebung festlegt.