1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SuiSuiAdvent Calendar 2023

Day 22

pyinstallerでpythonスクリプトをexeファイル化

Posted at

はじめに

Python周りの環境とPythonスクリプトを1つにパッケージ化する "pyinstaller" について,紹介します.

pyinstallerのメリット・デメリット

メリット

Python環境を構築していないPCでもプログラムを実行することができるため,プログラム配布のハードルがかなり低くなります.

デメリット

作成したexeファイルのサイズが大きくなる場合があります.また,exeファイルを修正することができないため,スクリプトの修正を行う度にexe化する必要があります.

動作環境

  • pyinstaller 6.2.0

pyinstallerはpipを使用してインストールできます.

pip install pyinstaller

コマンド紹介

基本構文

pyinstallerでスクリプトをパッケージングする基本構文は下記の通りです.

pyinstaller xxx.py

オプション

パッケージングの際に,いくつかのオプションを設定することができます.使用頻度が高めなものを紹介します.

--onedir or -D

-> 出力を1ディレクトリにまとめます.

--onefile or -F

-> 出力を1ファイルにまとめます.

--noconsole or -w

-> コンソールを表示しません.

--clean

-> ビルド前にPyInstallerのキャッシュをクリーンアップし、一時ファイルを削除します.

--distpath DIR

バンドルされたアプリ(exファイル)を配置する場所を指定します.デフォルトは ./dist

--exclude 除外するライブラリ名

パッケージングの際に特定のライブラリを除外します.このコマンドは複数回使用できます.

pandasnumpyがexeファイルの肥大化に貢献しているので,スクリプトで使用していなければ積極的に除外したいところ.

-n NAME or --name NAME

バンドルされたアプリと仕様ファイルに名前を割り当てます.デフォルトはPythonスクリプトのベースネーム.

サンプルコード

pyinstaller test.py --onefile --noconsole --clean --exclude pandas --exclude --numpy --dispatch C:/Work --name test
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?