さて、早速MacにPythonをインストールしようと思いましたが、その前に知っておくべきことがあると、実はインストールした後から気が付いたのです。時既に遅し、インストールしたPythonをアンインストールにも一苦労し、最初からやり直し・・・
ということで、特にMacにPythonをインストールする前に知っておくべき(知っていたらよかった)ことをご説明します。
MacにはPythonが入っている
なんと、Macには最初からPythonが入っています。しかも2.7、3.7の二つも。Pythonは複数バージョンを同時にインストールして、起動時にバージョンを選択することができます。
ということは、わざわざPythonをインストールしなくても良いということ?そうなのかもしれません。Pythonの最新版が必要ないのであれば、プレインストールのバージョンを使うという選択肢もありそうです。その一方で、最新バージョンではなく、更新もされませんので、Pythonが進化する中では、直近バージョンを新たにインストールするのが一般的のようです。
インストールの方法は複数
インストールの方法はいくつかありますが、Python公式ページでは、公式サイトのインストーラーと、Homebrew(Macにインストールするパッケージの管理システム)を使ったインストールが紹介されています。Homebrewでインストールすると最新バージョンに自動更新されますが、公式インストーラーでは、インストール時点の決まったバージョンからの更新はありません。
常に最新バージョンが必要か、一定のバージョンで十分かによって使い分けするのが良さそうです。一方、PythonでGUIを活用するのであれば、GUIへのインターフェイスであるTkinterのバージョンとインストールは大きな問題となります。PythonでGUIを使うかどうかで、インストール方法も見直しを行った方が良さそうです。
Macへのインストールで考慮すべきこと(Tkinter)
PythonではTk GUIツールへのインターフェイスとしてTkinterパッケージが用意されています。プリインストールされたPythonにもTkinter(バージョン8.5.9)がインストールされていますが、Pythonとの相性が極めて悪く、Pythonのモジュールが正しく動かないケースが頻発します。
公式インストーラーからインストールすると、Tkinterも最新バージョンがインストールされ、Pythonの統合開発環境であるIdle3でも最新バージョンを使うことができます。
問題は、Homebrewでインストールした場合、Pythonに加えTkinterの最新バージョン(8.6)をインストールしても、ライブラリを呼び出す際にプリインストールバージョンが呼び出されてしまうことです。この修正がなかなか難しい。Pythonをインストールしてしまっていたら、まずはアンインストールし、バーチャル環境(pyenv)を構築し、Tcl-tkの最新版をインストールし、パスを直し・・・これでも上手くいったりいかなかったり。
つまり
現状では、MacでHomebrewを使ってPythonをインストールした場合、Tkinterをそのまま最新版で使うことはできず、最新版への切替も相当の労力が必要(しかも成功するとは限らない)ということだと思います。この点も考慮して、Pythonのインストール方法を選択する必要がありそうです。
助けていただいているサイト
【Python】tkinterのアップデート失敗した備忘録【インポートエラー】(科学のメモ帳 様)
pyenv が homebrew でインストールした tcl-tk と動かない。(survivor7777777 様)
0 件のコメント:
コメントを投稿