#Python3.7以降でexeを実行する
Python3.5以降でexeを実行するには、subprocess.runを使います。
(※Python3.4以前はsubprocess.callです。)
そしてこの記事で紹介するパラーメータは3.7以降のものなのでご注意ください。
コマンドプロンプトで以下コマンドで実行するexeを例に説明します。
(例)cmd> sample.exe /a /b /c
import subprocess
result = subprocess.run("sample.exe /a /b /c")
print(result)
#戻り値
#CompletedProcess(args='sample.exe', returncode=0)
戻り値の通り、これだけでは出力結果やエラー出力結果が得られません。
そこで、capture_output
とtext
パラメータを設定してやります。
import subprocess
result = subprocess.run("sample.exe /a /b /c, capture_output=True, text=true")
print(result)
#戻り値
#これはサンプルです。
capture_output
true
を指定すると、出力結果、出力エラー結果を得られます。
text
true
にすると戻り値を文字列として受け取れるようになり便利です。指定しなければバイトデータとして返ってきます。
#さいごに
今回は1分以内に直感的にPythonでexeを実行する方法を伝えたかったため、最小限の説明としました。
これ以外にもsubprocessはたくさんパラメータや使い方が存在するのでぜひ調べてみてください。
#参考サイト
・[Python 3のsubprocess.run()の使い方](Python 3のsubprocess.run()の使い方)
・subprocess --- サブプロセス管理