業務で使う簡単なアプリを JScript や Perl を使って作っていたのだが、なんか飽きてきたので Python を始めてみた。まず一番初めにコンソールアプリを作るお勉強。所謂“exe 化”。Perl で言う PAR(参照 : その1、その2)に当たるものは Python では py2exe らしい。
py2exe モジュールについて
http://python.matrix.jp/modules/py2exe.htmlFrontPage – py2exe.org
http://www.py2exe.org/
スクリプトの準備
exe 化するには次のような設定ファイルを書く。
setup.py
# coding=utf-8
from distutils.core import setup
import py2exe
# exe 化するスクリプト
script_file = "test.py"
# アイコン
icon_file = "test.ico"
py2exe_options = dict(
compressed = 1
,optimize = 2
,bundle_files = 2
)
setup(
options = { "py2exe": py2exe_options }
,console = [
{
"script": script_file
,"icon_resources": [ ( 1, icon_file ) ]
}
]
,zipfile = None
)
実際に exe 化するスクリプトは次のものだ。又、exe ファイルにしたときのアイコンに“test.ico”というファイルを用意した。
test.py
# coding=utf-8 print "Hello, " + raw_input( u"あなたの名前は?".encode( "cp932" ) ) + "!" raw_input( u"Enter キーを押してください".encode( "cp932" ) )
exe 化実行
setup.py を実行するだけである。
X:\python\test> python setup.py py2exe ~なんかいろいろ出る~ X:\python\test> dir dist X:\python\test\dist のディレクトリ 2010/04/28 10:45 <DIR> . 2010/04/28 10:45 <DIR> .. 2009/04/14 22:42 2,134,016 python26.dll 2010/04/28 10:45 761,774 test.exe 2009/04/14 22:39 49,664 w9xpopen.exe
w9xpopen.exe は Win9x 系で必要になるものらしいが、今時必要になることはないだろう。配布するときは python26.dll、 test.exe の 2 つで十分だ。この状態で test.exe をダブルクリックするとプログラムが起動する。

ううむ、なんと簡単なんだ。PAR で Perl スクリプトを exe 化するのにはあんなに苦労したのに(こことか、ここ)、あまりにも簡単で拍子抜けしてしまった。exe 化自体や exe 化したプログラムの起動スピードも速くて扱いやすいねえ。
