記事の内容に適合し、質問形式を使用するいくつかのタイトル オプションを次に示します。 オプション 1 (問題に焦点を当てる): * 「subprocess」を使用して呼び出された Python スクリプトから出力を取得するにはどうすればよいですか? オプティオ

DDD
リリース: 2024-10-25 21:29:03
オリジナル
490 人が閲覧しました

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

サブプロセスを使用した別のスクリプトからの入力による Python スクリプトの呼び出し

Python では、サブプロセス モジュールは外部コマンドまたはスクリプトを実行する手段を提供します。 。ただし、別のスクリプトから Python スクリプトを呼び出して入力を提供する場合、出力を取得するのが困難になることがあります。

サブプロセス呼び出しからの出力の取得

出力を取得するにはサブプロセス呼び出しから、外部スクリプトの標準出力をキャプチャする check_output 関数を使用できます。これを実現する方法は次のとおりです。

<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>
ログイン後にコピー

この例では、input_data は a.py の入力クエリを含む文字列です。 check_output 関数は外部スクリプトを実行し、入力クエリを標準入力として提供します。返された出力変数には、スクリプトの出力が文字列として含まれるようになりました。

代替アプローチ

subprocess モジュールを直接使用する以外に、内部から Python スクリプトを呼び出す代替アプローチもあります。スクリプト:

  • モジュールのインポート: 外部スクリプトをメイン スクリプトにインポートし、その関数を直接呼び出すことができます。これには、a.py で適切なモジュール レベルの保護が必要です。
  • マルチプロセッシングの使用: クエリの計算コストが高い場合は、マルチプロセッシングを使用してクエリを別のプロセスで実行すると、パフォーマンスが向上する可能性があります。

以上が記事の内容に適合し、質問形式を使用するいくつかのタイトル オプションを次に示します。 オプション 1 (問題に焦点を当てる): * 「subprocess」を使用して呼び出された Python スクリプトから出力を取得するにはどうすればよいですか? オプティオの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!