2017-06-04 5 views
0

Aufruf von subprocess.Popen (["python"]) erzeugt einen Prozess, als ob er den globalen 2.7-Python aufruft, anstatt eine 3.6-Version zu erzeugen, wie im virtualenv definiert. subprocess.Popen Dokumentation sagt, dass execvp aufgerufen wird, aber es scheint so zu tun, als ob eine neue saubere Shell es aufrufen würde. Gibt es eine Möglichkeit, Systemaufrufe innerhalb des Codes zu erzwingen, aber unter dem virtualenv?Pycharm subprocess.Popen python unter virtualenv

Auf MacOS laufen lassen, in einem virtualenv-Verzeichnis projezieren, das von Pycharm erkannt wird (Preferences-> Project-> Project Interpreter zeigt auf den Python im virtualenv). Mein globaler python-Befehl startet den 2.7-Interpreter, aber im virtualenv startet Python den 3.6-Interpreter.

Antwort

1

subprocess.Popen([sys.executable])

Verwandte Themen