Maison >développement back-end >Tutoriel Python >Le shell peut-il exécuter Python ?

Le shell peut-il exécuter Python ?

anonymity
anonymityoriginal
2019-06-14 11:42:504464parcourir

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn