4. Macintosh で Python を使う

著者

Bob Savage <bobsavage@mac.com>

Mac OS X が動作している Macintosh 上の Python は原則的には他の Unix プラットフォーム上の Python と非常によく似ていますが、 IDE やパッケージ・マネージャなどの指摘すべき追加要素があります。

4.1. MacPython の入手とインストール

Mac OS X 10.8 には Apple によって Python 2.7 がプリインストールされています。Python の Web サイト (https://www.python.org) から最新バージョンの Python 3 を取得しインストールすることもできます。新しい Intel の CPU でも古い PPC の CPU でもネイティブに動作する "ユニバーサル・バイナリ" ビルドの最新のものがあります。

インストールを行うといくつかのものが手に入ります:

  • Applications フォルダにある Python 3.8 フォルダ。公式の Python ディストリビューションに含まれる開発環境 IDLE; Finder から Python スクリプトをダブルクリックしたときに起動する PythonLauncher; Python スクリプトを単独のアプリケーションに変換する "Build Applet" ツールがここにあります。

  • Python 実行ファイルやライブラリを含む /Library/Frameworks/Python.framework フレームワーク。インストーラはシェルのパスにこの場所を追加します。 MacPython をアンインストールするには、これら 3 つを削除すればよいだけです。 Python 実行ファイルへのシンボリックリンクは /usr/local/bin/ に置かれています。

Apple が提供している Python のビルドは /System/Library/Frameworks/Python.framework/usr/bin/python にそれぞれインストールされています。これらは Apple が管理しているものであり Apple やサードパーティのソフトウェアが使用するので、編集したり削除したりしてはいけません。 python.org から新しいバージョンの Python をインストールする場合には、それぞれ正常に動作する 2 つの異なる Python 環境がコンピュータにインストールされるため、意図する方の Python のパスを設定し、使用することが重要です。

IDLE にはヘルプメニューがあり Python のドキュメントにアクセスすることができます。もし Python が全くの初めての場合にはドキュメントのチュートリアルを最初から読み進めることをおすすめします。

もし他の Unix プラットフォームで Python を使い慣れている場合には Unix シェルからの Python スクリプトの実行についての節を読むことをおすすめします。

4.1.1. Python スクリプトの実行方法

Mac OS X で Python を始める最良の方法は統合開発環境である IDLE を使うことです、 IDE 節を参照し IDE を実行しているときにヘルプメニューを使ってください。

もし Python スクリプトをターミナルのコマンドラインや Finder から実行したい場合は最初にエディタでスクリプトを作る必要があります。 Mac OS X には vimemacs などの Unix の標準のラインエディタが備わっています。もしもっと Mac らしいエディタが欲しい場合には、Bare Bones Software (http://www.barebones.com/products/bbedit/index.html を参照) の BBEditTextWrangler もしくは TextMate (https://macromates.com/) は良い選択候補です。他には Gvim (http://macvim-dev.github.io/macvim/) や Aquamacs (http://aquamacs.org/) などがあります。

ターミナルからスクリプトを実行するには /usr/local/bin がシェルのパスに含まれていることを確認してください。

Finder からスクリプトを実行するのには 2 つの方法があります:

  • PythonLauncher へドラッグする

  • Finder の情報ウィンドウから PythonLauncher をそのスクリプト (もしくは .py スクリプト全て) を開くデフォルトのアプリケーションとして選び、スクリプトファイルをダブルクリックしてください。 PythonLauncher の環境設定にはどのようにスクリプトを実行するかを管理する様々な設定があります。 option キーを押しながらドラッグすることで実行するごとにこれらの設定を変えられますし、環境設定メニューから全ての実行に対して設定変更することもできます。

4.1.2. GUI でスクリプトを実行

古いバージョンの Python には、気を付けておかないといけない Mac OS X の癖があります: Aqua ウィンドウマネージャとやりとりをする (別の言い方をすると GUI を持つ) プログラムは特別な方法で実行する必要があります。 そのようなスクリプトを実行するには python ではなく pythonw を使ってください。

Python 3.8 では、 pythonpythonw のどちらでも使えます。

4.1.3. Configuration

OS X 上の Python では PYTHONPATH のような全ての標準の Unix 環境変数が使えますが、Finder からプログラムを起動する場合このような環境変数を設定する方法は非標準であり Finder は起動時に .profile.cshrc を読み込みません。 ~/.MacOSX/environment.plist ファイルを作る必要があります。詳細については Apple の Technical Document QA1067 を参照してください。

MacPython の Python パッケージのインストールについてのさらなる情報は、 追加の Python パッケージのインストール 節を参照してください。

4.2. IDE

MacPython には標準の IDLE 開発環境が付いてきます。 http://www.hashcollision.org/hkn/python/idle_intro/index.html に IDLE を使うための良い入門があります。

4.3. 追加の Python パッケージのインストール

追加の Python パッケージをインストールする方法がいくつかあります:

  • パッケージは Python の標準の distutils モードを使ってインストールすることができます (python setup.py install)。

  • 多くのパッケージは setuptools 拡張や pip ラッパーを使ってもインストールできます。 https://pip.pypa.io/ を参照してください。

4.4. Mac での GUI プログラミング

Python で Mac 上の GUI アプリケーションをビルドする方法がいくつかあります。

PyObjC は Mac の最新の開発基盤である Apple の Objective-C/Cocoa フレームワークへの Python バインディングです。PyObjC の情報は https://pypi.org/project/pyobjc/ にあります。

Python 標準の GUI ツールキットは、クロスプラットフォームの Tk ツールキット (https://www.tcl.tk) 上に構築された tkinter です。 Tk の Aqua ネイティブバージョンは Apple が OS X にバンドルしており、最新バージョンは https://www.activestate.com からダウンロードおよびインストールできます; またソースからビルドすることもできます。

wxPython は別の人気のあるクロスプラットフォームの GUI ツールキットで Mac OS X 上でネイティブに動作します。パッケージとドキュメントは https://www.wxpython.org から利用できます。

PyQt は別の人気のあるクロスプラットフォームの GUI ツールキットで Mac OS X 上でネイティブに動作します。詳しい情報は https://riverbankcomputing.com/software/pyqt/intro にあります。

4.5. Mac 上の Python アプリケーションの配布

フォルダ MacPython 3.6 にある "Build Applet" ツールを使うと、自身のマシン上で小さな Python スクリプトをパッケージにして標準の Mac アプリケーションとして実行することができます。ただし、このツールは Python アプリケーションを他のユーザに配布できるほどには安定していません。

Mac 上の単独の Python アプリケーションをデプロイする標準のツールは py2app です。 py2app のインストールと使用法に関する情報は http://undefined.org/python/#py2app にあります。

4.6. 他のリソース

MacPython メーリングリストは Mac での Python ユーザや開発者にとって素晴しいサポートリソースです:

https://www.python.org/community/sigs/current/pythonmac-sig/

他の役に立つリソースは MacPython wiki です:

https://wiki.python.org/moin/MacPython