業務で使う簡単なアプリを 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 化したプログラムの起動スピードも速くて扱いやすいねえ。