ぽっけの技術ブログ

仕事や趣味で日々学んだことを出力していきます。

pyファイルを配布する時はexeファイルにする

先日パソコンAで作成したPythonのソースファイル(.py)を、パソコンBで実行しようとするとうまくいきませんでした。
コンソールアプリだったのですが、一瞬だけコンソールが表示されすぐに終了してしまいます。

Visual Studio Codeで中身を見ると、import numpyの箇所にエラー。
pip list コマンドでライブラリを見てみるとパソコンAにはnumpyがインストールされているのに対し、パソコンBにはインストールされていませんでした。

実行環境にライブラリが足りていなければpyファイルは実行できないようです。
つまりPythonでアプリケーションを作ってもpyファイルは配布するには少し向いていない。

www.insource.co.jp

上記サイトによると配布する時はexeファイルにすると良さそうです。

  1. pyinstallerがなければ pip install pyinstaller でインストール
  2. pyファイルのある階層に移動し、 pyinstaller xxx.py --onefile

これでしばらく待つとdistフォルダが作成され、中にxxx.exeファイルが生成されます。
注意点として、例えばアプリに「同階層のCSVファイルを読み込む」といった操作が含まれる場合、そのままの場所でEXEを実行するとエラーになるのでファイルを移動させましょう。