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」が生成されます。ダブルクリックで実行できます。
この記事が気に入ったらサポートをしてみませんか?