Maison >développement back-end >Tutoriel Python >Voici quelques options de titre qui correspondent au contenu de l'article et utilisent un format de question : Option 1 (Concentrez-vous sur le problème) : * Comment puis-je obtenir le résultat d'un script Python appelé à l'aide d'un « sous-processus » ? Option

Voici quelques options de titre qui correspondent au contenu de l'article et utilisent un format de question : Option 1 (Concentrez-vous sur le problème) : * Comment puis-je obtenir le résultat d'un script Python appelé à l'aide d'un « sous-processus » ? Option

DDD
DDDoriginal
2024-10-25 21:29:03589parcourir

Here are a few title options that fit the article's content and use a question format:

Option 1 (Focus on the problem):

* How Can I Get Output From a Python Script Called Using `subprocess`?

Option 2 (Highlights the solution):

* Retrieving Output fro

Appel d'un script Python avec l'entrée d'un autre script à l'aide d'un sous-processus

En Python, le module de sous-processus fournit un moyen d'exécuter des commandes ou des scripts externes . Cependant, lorsque vous appelez un script Python à partir d'un autre script et que vous y fournissez une entrée, obtenir le résultat peut être difficile.

Obtenir le résultat des appels de sous-processus

Pour récupérer le résultat à partir d'un appel de sous-processus, vous pouvez utiliser la fonction check_output, qui capture la sortie standard du script externe. Voici comment y parvenir :

<code class="python">import subprocess

# Path to the external script (a.py)
script_path = 'a.py'

# Input to be provided to the external script
input_data = '\n'.join(['query 1', 'query 2'])

# Execute the external script with input
output = subprocess.check_output([sys.executable, script_path],
                                 input=input_data,
                                 universal_newlines=True)</code>

Dans cet exemple, input_data est une chaîne contenant les requêtes d'entrée pour a.py. La fonction check_output exécute le script externe, fournissant les requêtes d'entrée au format stdin. La variable de sortie renvoyée contient désormais la sortie du script sous forme de chaîne.

Approches alternatives

En plus d'utiliser directement le module de sous-processus, il existe des approches alternatives pour appeler des scripts Python depuis l'intérieur. un script :

  • Importation du module : Vous pouvez importer le script externe dans votre script principal et appeler directement ses fonctions. Cela nécessite une protection appropriée au niveau du module dans a.py.
  • Utilisation du multitraitement : Si les requêtes sont coûteuses en termes de calcul, vous pouvez utiliser le multitraitement pour les exécuter dans des processus distincts, améliorant ainsi potentiellement les performances.

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