はじめに
Pythonを使ったスクリプトを他人に配布する際、Pythonがインストールされていない環境でも実行可能な形式にしたいと思ったことはありませんか。そんな時に便利なツールがPyInstallerです。
この記事では、Macを使っている人に向けて、PyInstallerの使い方を解説します。
この記事でわかること
・Mac環境でPyInstallerを使用して、.app形式のアプリを作成する方法。
準備するもの
Python 3.x (バージョンに注意)
PyInstaller
テキストエディタ、例えばVS Code
ターミナル
ライブラリのインストール
さきにPyInstallerをインストールします。
pip install pyinstaller
インストール完了後、バージョンを確認してください。
pyinstaller --version
ディレクトリ構成
この記事の例では、次の構成を使用します。
my_project/
├── main.py
├── data/
│ └── example.txt
main.py
: 主なPythonスクリプト(※main.pyとしていますが、皆様が共有されたいお好きなファイルを指定してください)data/
: ファイルを格納するディレクトリ
PyInstallerでバイナリ化
処理を共有するためにappファイルを作成します。
pyinstaller --onefile --noconsole main.py
上記のコマンド実行後、dist/main
に.appファイルが生成されます。
この.appファイルは、Pythonがインストールされていない環境でもそのまま実行可能です。
たとえば、このファイルをチーム内で共有することで、プログラムの設定やPython環境の準備が不要になります。受け取ったメンバーは、単にファイルをダブルクリックするだけでアプリケーションを利用できます。
これにより、Pythonを知らない人でもスムーズにアプリを活用できるのが大きな利点です。
また、エンドユーザーに配布する際にも便利で、特別なインストール手順を必要としないため、配布作業が大幅に簡略化されます。
--onefile と --noconsole についての補足
--onefile
: 実行ファイルを1つにまとめるオプション- 必要なライブラリやリソースが全て1つのファイルに圧縮され、配布が簡単になります。
- デメリットとして、実行時に圧縮ファイルを展開するため、起動速度が若干遅くなることがあります。
--noconsole
: コンソールウィンドウを非表示にするオプション- GUIアプリケーションの場合、ターミナルウィンドウが表示されず、ユーザーにとって見た目がスッキリします。
- デバッグ時にはエラー内容が見えなくなる可能性があるため注意が必要です。 さらに、.appファイルを作成します。
注意点
- PyInstallerで作成したバイナリは作成時のOSに依存します。他のOSで使用する場合は、それぞれのOS上でバイナリを作成する必要があります。
- 作成されたバイナリにはPythonインタプリタを含むため、ファイルサイズが大きくなることがあります。
受け手の使い方
共有された.app
ファイルを受け取ったユーザーは、次のようにアプリを利用できます。
.app
ファイルをダウンロードして、任意のディレクトリに保存します。- ファイルをダブルクリックするとアプリケーションが起動します。
特に設定や追加のインストールが不要なため、プログラムに詳しくない人でも簡単に利用できるのが魅力です。
まとめ
Mac環境でPyInstallerを使用してファイルを自立型に変換する方法を解説しました。 これを参考にして、ご自身のプロジェクトに展開してみてください。
コメント