Python3.7以降でsubprocess.run()関数を使いexe実行
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はたくさんパラメータや使い方が存在するのでぜひ調べてみてください。
参考サイト
Author And Source
この問題について(Python3.7以降でsubprocess.run()関数を使いexe実行), 我々は、より多くの情報をここで見つけました https://qiita.com/xKxZxYx/items/d09b91a2f9dada4bbc61著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .