2019年4月7日日曜日

Pythonスクリプトを実行可能ファイル(exe)にする

Pythonは重いので、これまではCppのソースに書き直して実行ファイルにしていました。が、人力によるコンパイルなので当然ミスもありますし、なにより面倒です。そこで今回はpyinstallerを試してみることにしました。

pyinstallerのインストール

>pip install pyinstaller

pyinstallerでコンパイルする

>pyindysllrt test.py
または
>pyindysllrt test.py --onefile

実行すると、いくつかファイルやディレクトリが出来ます。コンパイルされたものはdistに入っています。
--onefileオプションを指定すると、実行ファイルを1つに纏めてくれますので便利です。

早くなるの?

試しにtensorflowのコードをコンパイルしてみました。

結果、計算速度の向上はありませんでした
無意味でした。残念でした‥

まぁほら、Tensorflowは内部はexeになってるっぽいし、ひょっとしたら他のPythonコードならいい結果出るかもしれません。

pyinstallerを使う意味をあえて挙げるとしたら、

  • ソースコードを隠すことができる
  • Pythonをインストールしていない環境でも実行できる

ことくらいでしょうか。



0 件のコメント:

コメントを投稿