見出し画像

Pythonスクリプトを実行ファイル(app/exe)に変換

1. cx_Freeze

「cx_Freeze」は、Pythonスクリプトを実行可能ファイル(app/exe)に変換するツールです。「Python 3.5以降」をサポートしています。

2. cx_Freezeのインストール

pyenv + venv」の仮想環境で以下のコマンドを実行します。Anacondaだとうまくいきませんでした。

$ pip install cx_Freeze

3. cx_Freezeの使用

(1) 実行ファイルに変換するPythonスクリプトの準備
「Tkinter」を使って、ウィンドウとボタンを表示するスクリプトになります。

pyenv + venv」で「Tkinter」を使うには、 先に「ActiveTcl 8.5」をインストールし、その後にpyenvへのpythonのインストールと、venvによる仮想環境の作成を行う必要があります。

【SimpleTkApp.py

from tkinter import Tk, Label, Button, BOTTOM

root = Tk()
root.title('Button')
Label(text='I am a button').pack(pady=15)
Button(text='Button').pack(side=BOTTOM)
root.mainloop()

(2) 「setup.py」の作成
「setup.py」は、Pythonスクリプトを実行ファイルに変換するためのオプションを設定するファイルです。
詳しくは、ファイル仕様各種サンプルを参照してください。

【setup.py

# -*- coding: utf-8 -*-

import sys
from cx_Freeze import setup, Executable

base = None
if sys.platform == 'win32':
   base = 'Win32GUI'

executables = [
   Executable('SimpleTkApp.py', base=base)
]

setup(name='simple_Tkinter',
     version='0.1',
     description='Sample cx_Freeze Tkinter script',
     executables=executables
     )

(3) 変換の実行
今回は、Mac用の実行ファイル(app)を生成するので、「bdist_mac」を指定します。

$ python setup.py bdist_mac

成功すると、buildに「simple_Tkinter-0.1.app」が生成されます。ダブルクリックで実行できます。

画像1


この記事が気に入ったらサポートをしてみませんか?