ホームページ >バックエンド開発 >Python チュートリアル >os.system の出力を画面に表示せずに Python 変数にキャプチャするにはどうすればよいですか?
Python では、os.system 関数はシステム コマンドを実行し、終了コードを返します。ただし、出力を画面に出力することは望ましくない場合があります。この記事では、画面上の表示を抑制しながら出力を変数にキャプチャするための解決策について説明します。
以前の問い合わせによると、os.popen は実行可能なオプションを提供しています。 :
os.popen('cat /etc/services').read()
Python 3.6 ドキュメントで指定されているように、os.popen はsubprocess.Popen は、サブプロセスの管理と通信のためのより堅牢な機能を提供します。
サブプロセスを直接使用する場合、次のコードはキャプチャ出力手法を示しています。
import subprocess proc = subprocess.Popen(["cat", "/etc/services"], stdout=subprocess.PIPE, shell=True) (out, err) = proc.communicate() print("program output:", out)
stdout=subprocess.PIPE を設定すると、出力がキャプチャされ、次のようにアクセスして印刷できます。希望します。
以上がos.system の出力を画面に表示せずに Python 変数にキャプチャするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。