py2exeをpython 3.5 - 3.7で使う
最近はpythonにハマっています。
数値計算や機械学習等のライブラリが非常に豊富で、簡単にいろんなことができます。
そうするとやってみたくなるのがアプリをパッケージングして配布することですよね!
というわけで調べてみるとpyhtonスクリプトをアプリ化するのにはだいたいpyinstallerとpy2exeに別れます。
この2つの違いは簡単にまとめると以下のとおりです。
<pyinstaller>
・スクリプト単体だけでアプリ化できるので手軽。
・アプリ化したファイルの起動時間が長い。
<py2exe>
・アプリ化する際にsetup.pyを作成する必要がある。
・アプリ化したファイルの起動時間が短い。
とりあえずは手軽なpyinstallerでアプリ化してみたのですが、やはり起動時間が遅いのは気になりました。
というわけでpy2exeを使ってみようと思い調べてみたのですが、python 3.4までしか動かないという記事が多く見られました。
以下は2020年1月19日と最近に書かれた記事です。
【Python】py2exeはバージョン3.4までしか動かない!「pyinstaller」をインストールしよう
そこでpy2exeのgithubを覗いてみたところ、きちんとPython 3.7までに対応したバージョンがあるではないですか!!(管理している方はオリジナルとは別の方のようです。)
py2exe for Python 3
対応しているpythonは3.5-3.7です。
ただこのバージョンはpip install py2exeでは配信されておりません(2020年3月2日現在、python 3.4まで対応している旧バージョンがインストールされる)。
最新バージョンのpy2exeをインストールするには以下の手順を踏む必要があります。
※youtubeで動画も公開しました。こちらのほうがより丁寧に解説しています。
①githubのreleaseページから欲しいバージョンのpy2exeのwhlをダウンロードする。
②pip install ダウンロードしたwhlまでのパス
以上でpython 3.7まで対応したpy2exeをインストールできます。
使い方は今までのpy2exeと変わっていないので、使い方は色々検索してください。
ちなみに私はfbprophetをアプリ化したいのですが、pyinstallerでは成功したのですがpy2exeではまだできていません。。。
fbprophetをアプリ化するのはなかなか難しいですね(pyinstallerでも苦労しました。)