Heim  >  Artikel  >  Backend-Entwicklung  >  Kann die Shell Python ausführen?

Kann die Shell Python ausführen?

anonymity
anonymityOriginal
2019-06-14 11:42:504419Durchsuche

Kann die Shell Python ausführen?

Kann die Shell Python ausführen?

Eigentlicher Fall: Shell ruft Python-Skript auf und übergibt Parameter an Python-Skript

In Shell:

python test.py $para1 $para2

In Python:

import sys
def main($canshu1, $canshu2)
  .....
main(sys.argv[1], sys.argv[2])

Verwenden Sie die Shell, um Funktionen in Python aufzurufen:

Das Python-Skript lautet wie folgt, test .py :

import ConfigParser  
  
config = ConfigParser.ConfigParser()  
config.read("test.conf")  
  
def get_foo():  
    return config.get("locations", "foo")  
  
def get_bar():  
    return config.get("locations", "bar")

Ich möchte get_foo über die Shell aufrufen. Ich muss nur eine aufrufende Befehlszeile in der Shell ausführen:

python -c 'import test; print test.get_foo()'

Die Option -c teilt Python nur mit um einen Python-Befehl auszuführen.

Um das Ergebnis in einer Variablen zu speichern, können Sie Folgendes tun:

RESULT_FOO=`python -c 'import test; print test.get_foo()'`

Oder äquivalent:

RESULT=$(python -c 'import test; print test.get_foo()')

Wir können auch alle Methoden auf einmal aufrufen und eine Sammlung einfügen. Rufen Sie die Schneidemethode auf, um den entsprechenden Wert zu erhalten:

ALL_RESULTS=$(python -c 'import test; print test.get_foo(), test.get_bar()')

Wenn Sie das zweite Ergebnis benötigen, geben Sie es in RESULT_BAR ein:

 RESULT_BAR=$(echo $ALL_RESULTS | cut -d' ' -f2)

Das obige ist der detaillierte Inhalt vonKann die Shell Python ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn