1. ホーム
  2. python

[解決済み] subprocess.Popenとos.systemの違いについて

2022-04-26 14:48:12

質問

とはどのような違いがあるのでしょうか? subprocess.Popen()os.system() ?

解決方法は?

をチェックアウトすると Python ドキュメントのサブプロセスのセクションにある をどのように置き換えるかの例があることにお気づきでしょう。 os.system()subprocess.Popen() :

sts = os.system("mycmd" + " myarg")

...と同じことをします。

sts = Popen("mycmd" + " myarg", shell=True).wait()

改良版のコードはより複雑に見えますが、このように subprocess.Popen() それ以外のものは必要ありません。 subprocess.Popen() は、他のいくつかのツールに置き換えられます ( os.system() はそのうちの1つです)が、他の3つのPythonモジュールに散らばっていました。

参考になるのであれば subprocess.Popen() は、非常に柔軟な os.system() .