2016-03-29 3 views
2

Ich habe durch Stack-Überlauf gesucht, aber kein Beitrag speziell mit Anaconda geholfen.Wie aktivieren Sie eine Anaconda-Umgebung innerhalb eines Python-Skripts?

Ich versuche, meine eigene Eingabeaufforderung in Python. Aber um das zu tun, muss ich meine Anaconda-Umgebung aktivieren. Ich kann nirgends im Web finden, wie man ein einfaches Python-Skript ausführt, um diese Umgebung zu aktivieren. Weiß jemand, wie man das macht?

+0

führen Sie Anaconda auf Linux oder Windows? – Yunhe

+0

Ich renne Windows. – zhilothebest

Antwort

-1

Sie sollten, indem Sie nur bestimmte Umgebungen zu aktivieren Lage sein, die Befehlszeile zu verwenden:

activate environment-name 

Sie haben den Einsatz Quelle auf Linux zu tun.

source activate environment-name 

http://conda.pydata.org/docs/using/envs.html#change-environments-activate-deactivate

EDIT (3/29/2016)

Sorry, falsch verstanden habe ich die Frage. Sie sollten die Aufrufmethode in subprocess module verwenden können, um den Shell-Befehl über ein Python-Skript auszuführen.

Edit: Ein einfaches Beispiel des subprocess:

subprocess.call(["activate", value]) 
+0

Ich bekomme diesen Teil, aber ich brauche mein Python-Skript, um es zu können. Nicht ich in meinem Eingabeaufforderungs-Terminal. – zhilothebest

+0

Oh, also versuchen Sie, eine Umgebung durch ein Python-Skript zu aktivieren? Soweit ich das sagen kann, müssen Sie dies über die Eingabeaufforderung tun, aber Sie sollten in der Lage sein, die Aufruffunktion im [Subprozessmodul] (https://docs.python.org/2/library/subprocess.html) zu verwenden). – jsb

+0

Ich sehe mir das an. Vielen Dank! – zhilothebest

0

Im Folgenden wird in Python arbeiten 3.5 die Subprozess-Modul:

subprocess.run('source activate environment-name && "enter command here" && source deactivate', shell=True) 

das Ersetzen "geben Sie den Befehl hier" mit der Befehl, den Sie ausführen möchten. Sie brauchen nicht die "Quelle deaktivieren" am Ende des Befehls, aber es ist nur um sicher zu sein.

Dadurch wird die Anaconda-Umgebung für die Dauer des Unterprozessaufrufs vorübergehend aktiviert, wonach die Umgebung wieder in Ihre ursprüngliche Umgebung zurückkehrt. Dies ist nützlich, um Befehle in einer temporären Umgebung auszuführen.