システムコマンドをPythonで実行する方法

Pythonでシステムコマンドを実行する場合、最も推奨されるのはsubprocessモジュールを使う方法です。subprocess.run()は、シンプルかつ安全に外部コマンドを実行でき、標準出力やエラーの取得、ステータスコードの確認が可能です。

基本的な使用方法

import subprocess
subprocess.run(["ls", "-l"])

このコードは、ターミナルでls -lコマンドを実行し、ディレクトリの内容をリスト表示します。

他の方法

古いPythonバージョンではsubprocess.call()os.system()も使えますが、これらは制御が少ないため、subprocess.run()が推奨されます。Popenは非同期プロセスを扱う際に便利ですが、より高度な使用法が必要になります。

subprocess.run()の利点

  • 標準出力やエラー出力のキャプチャが可能
  • より安全なエラーハンドリング
  • コマンドの終了コードを簡単に取得できる これにより、より堅牢で柔軟なコマンド実行が可能になります。