質問:
Pythonスクリプトから外部コマンド(UNIXシェルとかWindowsのコマンドプロンプトで入力したみたいに)ってどうやって呼び出せるの?
By freshWoWer | 質問日時: Sep 18 ‘08 at 1:35
回答1:
標準ライブラリのsubprocess モジュールを参照:
|
subprocessはsystemと比較して、より柔軟性があることが利点。
(stdout、stderr、 “実際の”ステータスコード、より良いエラー処理、等…)。
公式ドキュメントも
subprocessモジュールを代替のos.system()として推奨してる。
subprocessモジュールは、新しいプロセスを産み出して、その結果を処理するため強力な機能を提供する。このモジュールを使用することは、この関数
os.system()
]を使うのより望ましい。
subprocessドキュメントの「古い関数をsubprocessモジュールで置き換えるの部分はいろいろ役に立つレシピがあるかも。
subprocessモジュールの公式文書は:
By David Cournapeau | 回答日時: Sep 18 ‘08 at 1:39
回答2:
僕なら普通こう書く、
|
パイプ内の stdout
データは自由に使える。実際には、
それらのパラメータ(stdout =
、 stderr =
)は省略できるけど。その場合はos.system()
のように振る舞う。
By EmmEff | 回答日時: Sep 18 ‘08 at 18:20