Py2exeで使用できるキーワード・オプション一覧

この記事では、Py2exeというツールを使ってPythonスクリプトをWindows実行ファイルに変換する方法を紹介します。

Py2exeで使用できるキーワードやオプションについて解説し、それらを使ったサンプルコードも提供します。

初心者の方でもわかりやすく、実際のプログラム作成に役立つ内容です。

目次から探す

Py2exeで使用できるキーワード

Py2exeは、Pythonスクリプトを実行可能なWindows実行ファイルに変換するためのツールです。

Py2exeを使用する際には、いくつかのキーワードを指定することができます。

以下に、Py2exeで使用できるキーワードを紹介します。

console

consoleキーワードは、コンソールアプリケーションとして実行可能ファイルを作成するために使用されます。

このキーワードを指定すると、Pythonスクリプトがコマンドプロンプト上で実行されるようになります。

windows

windowsキーワードは、ウィンドウベースのアプリケーションとして実行可能ファイルを作成するために使用されます。

このキーワードを指定すると、PythonスクリプトがGUIアプリケーションとして認識され、コンソールウィンドウが非表示になります。

service

serviceキーワードは、Windowsサービスとして実行可能ファイルを作成するために使用されます。

このキーワードを指定すると、PythonスクリプトがWindowsサービスとして動作させられるようになります。

com_server

com_serverキーワードは、COMサーバーとして実行可能ファイルを作成するために使用されます。

このキーワードを指定すると、PythonスクリプトがCOMオブジェクトとして他のプログラムから利用できるようになります。

ctypes_com_server

ctypes_com_serverキーワードは、ctypesを使用してCOMサーバーを作成するために使用されます。

このキーワードを指定すると、Pythonスクリプトがctypesを介してCOMオブジェクトとして他のプログラムから利用できるようになります。

zipfile

zipfileキーワードは、実行可能ファイルにPythonスクリプトと必要なモジュールをZIPアーカイブとして含めるために使用されます。

このキーワードを指定すると、実行可能ファイルのサイズを小さくすることができますが、起動時にアンパック処理が入るため、起動時間が少し長くなります。

options

optionsキーワードは、Py2exeのさまざまなオプションを指定するために使用されます。

オプションには、コンパイルオプションやファイルの配置オプションなどがあります。

詳細なオプションはこの後紹介していきます。

Py2exeで使用できるオプション

Py2exeは、Pythonスクリプトを実行可能なWindows実行ファイルに変換するためのツールです。

Py2exeを使用する際には、さまざまなオプションを指定することができます。

以下では、Py2exeで使用できる主なオプションについて説明します。

unbuffered

unbufferedオプションは、標準入出力をバッファリングせずに処理するためのオプションです。

バッファリングを無効にすることで、リアルタイムでの入出力が可能になります。

optimize

optimizeオプションは、生成される実行ファイルの最適化レベルを指定するためのオプションです。

最適化レベルは0から2までの整数で指定します。

最適化レベルが高いほど、実行ファイルのサイズは小さくなりますが、実行速度は低下する可能性があります。

includes

includesオプションは、実行ファイルに含める追加のモジュールを指定するためのオプションです。

指定したモジュールは、実行ファイルに組み込まれ、実行時に必要ないくつかのモジュールを省略することができます。

packages

packagesオプションは、実行ファイルに含める追加のパッケージを指定するためのオプションです。

指定したパッケージは、実行ファイルに組み込まれ、実行時に必要ないくつかのパッケージを省略することができます。

ignores

ignoresオプションは、実行ファイルに含めないモジュールを指定するためのオプションです。

指定したモジュールは、実行ファイルに含まれず、実行時に必要ないくつかのモジュールを省略することができます。

excludes

excludesオプションは、実行ファイルに含めないパッケージを指定するためのオプションです。

指定したパッケージは、実行ファイルに含まれず、実行時に必要ないくつかのパッケージを省略することができます。

dll_excludes

dll_excludesオプションは、実行ファイルに含めないDLLファイルを指定するためのオプションです。

指定したDLLファイルは、実行ファイルに含まれず、実行時に必要ないくつかのDLLファイルを省略することができます。

dist_dir

dist_dirオプションは、生成される実行ファイルの出力先ディレクトリを指定するためのオプションです。

デフォルトでは、カレントディレクトリに実行ファイルが出力されますが、dist_dirオプションを使用することで、任意のディレクトリに出力することができます。

typelibs

typelibsオプションは、COMタイプライブラリを指定するためのオプションです。

COMタイプライブラリは、COMオブジェクトを使用する際に必要となる情報を含んでいます。

compressed

compressedオプションは、実行ファイルを圧縮するためのオプションです。

圧縮することで、実行ファイルのサイズを小さくすることができますが、実行速度は低下する可能性があります。

xref

xrefオプションは、実行ファイルにクロスリファレンス情報を含めるためのオプションです。

クロスリファレンス情報は、実行ファイルのデバッグや解析に役立ちます。

bundle_files

bundle_filesオプションは、実行ファイルに関連ファイルをバンドルするためのオプションです。

関連ファイルは、実行ファイルと一緒に配布され、実行時に必要なファイルをまとめて提供することができます。

skip_archive

skip_archiveオプションは、実行ファイルのアーカイブ化をスキップするためのオプションです。

アーカイブ化をスキップすることで、実行ファイルの展開時間を短縮することができます。

ascii

asciiオプションは、実行ファイルの文字セットをASCIIに制限するためのオプションです。

ASCII以外の文字が含まれる場合、エラーが発生します。

custom-boot-script

custom-boot-scriptオプションは、カスタムのブートスクリプトを指定するためのオプションです。

ブートスクリプトは、実行ファイルの起動時に実行されるスクリプトです。

以上が、Py2exeで使用できる主なオプションの一部です。

これらのオプションを適切に指定することで、Py2exeをより効果的に利用することができます。

オプションやキーワードを使ったサンプルコード

以下は、Py2exeで使用できるオプションやキーワードを使ったサンプルコードの一部です。

console

from distutils.core import setup
import py2exe
setup(console=['script.py'])

このコードでは、consoleキーワードを使用して、コンソールアプリケーションとして実行可能ファイルを作成しています。

windows

from distutils.core import setup
import py2exe
setup(windows=['script.py'])

windowsキーワードを使用すると、ウィンドウアプリケーションとして実行可能ファイルを作成することができます。

service

from distutils.core import setup
import py2exe
setup(service=['script.py'])

serviceキーワードを使用すると、Windowsサービスとして実行可能ファイルを作成することができます。

com_server

from distutils.core import setup
import py2exe
setup(com_server=['script.py'])

com_serverキーワードを使用すると、COMサーバーとして実行可能ファイルを作成することができます。

ctypes_com_server

from distutils.core import setup
import py2exe
setup(ctypes_com_server=['script.py'])

ctypes_com_serverキーワードを使用すると、ctypesを使用したCOMサーバーとして実行可能ファイルを作成することができます。

zipfile

from distutils.core import setup
import py2exe
setup(zipfile='library.zip', windows=['script.py'])

zipfileキーワードを使用すると、実行可能ファイルと依存するファイルを1つのZIPアーカイブにまとめることができます。

options

from distutils.core import setup
import py2exe
options = {
    'py2exe': {
        'bundle_files': 1,
        'compressed': True,
        'optimize': 2
    }
}
setup(options=options, windows=['script.py'])

optionsキーワードを使用すると、さまざまなオプションを指定することができます。

上記の例では、bundle_filesオプションを使用してすべてのファイルを1つの実行可能ファイルにバンドルし、compressedオプションを使用して圧縮し、optimizeオプションを使用して最適化レベルを指定しています。

以上が、Py2exeで使用できるオプションやキーワードを使ったサンプルコードの一部です。

これらのコードを参考にして、Py2exeを使ったプログラムの実行可能ファイルを作成してみてください。

目次から探す