外部コマンドを実行するにはsubprocessモジュールを使用する。
subprocess.callで実行できるが、python3ではsubprocess.runを使用することが推奨される。(callはまだ使えるが将来的には廃止の予定)
python3の場合 subprocess.run
たくさんのオプション引数を指定できるので詳細は公式ドキュメント参照。
subprocess.run
import subprocess
subprocess.run(["ls", "-l"])
python2の場合 subprocess.call
たくさんのオプション引数を指定できるので詳細は公式ドキュメント参照。
subprocess.call
import subprocess
subprocess.call(["ls", "-l"])
標準入力や、標準出力をキャプチャしたり、タイムアウトを設けたり、実行エラーをハンドリングしたりといったことが引数を指定することで可能になる。