Maison > Article > développement back-end > Le shell peut-il exécuter Python ?
Le shell peut-il exécuter Python ?
Cas réel : le shell appelle le script python et transmet les paramètres au script python
Dans le shell :
python test.py $para1 $para2
En python :
import sys def main($canshu1, $canshu2) ..... main(sys.argv[1], sys.argv[2])
Utiliser le shell pour appeler des fonctions en python :
Le script python est le suivant, 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")
Je veux appeler get_foo à l'intérieur via le shell, j'ai seulement besoin d'exécuter une ligne de commande d'appel dans le shell :
python -c 'import test; print test.get_foo()'
L'option -c indique simplement à python. pour exécuter une commande python.
Pour stocker le résultat dans une variable vous pouvez ainsi faire :
RESULT_FOO=`python -c 'import test; print test.get_foo()'`
Ou, de manière équivalente :
RESULT=$(python -c 'import test; print test.get_foo()')
On peut aussi appeler toutes les méthodes d'un coup, en les mettant dans une collection, appelez la méthode de découpe pour obtenir la valeur correspondante :
ALL_RESULTS=$(python -c 'import test; print test.get_foo(), test.get_bar()')
Si vous avez besoin du deuxième résultat, mettez-le dans RESULT_BAR :
RESULT_BAR=$(echo $ALL_RESULTS | cut -d' ' -f2)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!